私は、テキストエリアと組み込みコンテンツ編集可能iframe(rte)を含むいくつかのhtml要素を持つWebページを手に入れました。私はメインページにdraggestureイベントをキャッチし、今ドラッグする:データの置換
jQuery(document).bind('draggesture', function(event){
event.originalEvent.dataTransfer.setData('text/html', 'my_data');
});
text/htmlのデータを設定するために管理し、このコードを使用して
、メインページ「my_data」にテキストエリアにドロップするときは、ドロップされます。 contenteditable iframeをドロップすると、 'my_data'も削除されます。
1.文書が働くのiframeにハンドラのこの種の結合:
は、しかし、私は理解していないことをここに3つの問題を得ました。上記のコードにイベントデータのアナログを設定しましたが、動作しません。 iframeの内側またはメインページのテキストエリアにドラッグすると、 'my_data'が挿入されず、元の選択されたコンテンツが挿入されます。 'my_data'を設定するにはどうすればよいですか?2.私は、iframeのメインページにドロップイベントを使用してデータを設定/変更してみました:
jQuery(ed.getDoc()).bind('drop', function(event){
event.originalEvent.dataTransfer.setData('text/html', 'my_data');
});
しかし、私は両方の文書(メインページとiframeのjavascriptのエラーが出ます): "この文書では修正が許可されていません"。 なぜこのエラーが発生しますか?このための回避策はありますか? pimvdbのように見えます。
メインページから<p>some text</p><hr><p>some text</p>
を選択し、iは上から最初のコード例を使用して(Draggestureに)「my_data」を設定する際のcontentEditable IFRAME何も挿入されませんにこれをドラッグ。テキストエリアにドラッグすると機能します。 ここで何が間違っているのか、誰か知っていますか?(問題はクロムを使用して発生しません!)
EDIT:ここは遊んで、問題を理解するためのjsFiddleのデモです:
あなたはjsFiddleデモを作ることはできますか? –
私の編集後の記事を見る - jsFiddleのデモを追加 – Thariama