0

私は WYSIWYG エディターで作業しており、execCommand を使用した画像処理で問題が発生しています。以下は私のページ構造の簡単な例です。

<div id="buttons_panel"><input id="img_submit" type="button"/></div>

<div id="img_handle" style="display:none;">
<div id="ajax_upload"></div> /* AJAX IMG UPLOAD FROM */
<div id="images"></div> /* DIV FOR ALL UPLOADED IMAGES DISPLAY */
</div>

<iframe id="text_content"></iframe>

私が使用している単純化された JavaScript は、基本的に隠し div が ajax で画像をアップロードし、アップロードされたすべての画像を表示していることを示しています。

<script>
$("#img_submit").click(function(){
$("#img_handle").show();

/* HANDLE IMG UPLOAD WITH AJAX AND RELOAD ALL IMAGES INTO #images DIV */
});
</script>

これですべて問題なく動作します。新しい画像が ajax でアップロードされるとすぐに、画像 div に追加します。

function loadImgs(){
var loadImages="PATH/TO/URL"; 
$.post(loadImages, {request:"loadImages"}, function(response){
$("#images").append(response);
insert_img();
});
}

次に、結果のいずれかをクリックすると、次の関数が実行されます。

function insert_img(){$(".img_insert").click(function(){
var frame = document.getElementById('text_content'); frame.document.execCommand('InsertImage',false,"../PATH/TO/IMG"); 
});}

ここで、execCommand が firebug での動作を拒否する場所を示します。"getElementById("text_content").document UNDEFIEND"

そのページで実行する他のすべての execCommand 関数 (例: 斜体の太字、フォントの色など) は機能しますが、ここでは機能しません。解決策を見つけるのを手伝ってもらえますか?

4

1 に答える 1