私は 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 関数 (例: 斜体の太字、フォントの色など) は機能しますが、ここでは機能しません。解決策を見つけるのを手伝ってもらえますか?