editor.getDocument()
エディターの編集領域の Document オブジェクトを返します。編集するコンテンツは iframe の中にあるので、これはその iframe のドキュメントであり、外側のページのドキュメントではありません。編集中のコンテンツそのものに対して DOM 操作(クエリ、範囲、ノードの作成)を行う必要があるときは、いつでもこれを使います。
構文
editor.getDocument()
パラメーター
なし。
戻り値
編集用 iframe の Document。
動作に関する注意
- ページではなく iframe のドキュメントです。エディターはコンテンツを分離された iframe に描画します。外側のページで
document.querySelectorを実行しても、エディター内のノードは見つかりません。代わりにeditor.getDocument()に対してクエリを実行してください。 - ノードはこのドキュメントから作成します。エディターに挿入する予定の要素や範囲は、正しいドキュメントに属するよう、
editor.getDocument().createElement(...)やcreateRange()で作成してください。 - ドキュメント全体ではなく、編集可能な body 要素が必要な場合は getEditable() と組み合わせます。
使用例
編集中のコンテンツにある画像の数を数えます(ページではなく、エディターに限定されます)。
var editor1 = new RichTextEditor("#div_editor1");
var doc = editor1.getDocument();
var imageCount = doc.querySelectorAll("img").length;挿入する前に、エディターのドキュメントからノードを作成します。
var doc = editor1.getDocument();
var hr = doc.createElement("hr");
editor1.insertElement(hr);関連項目
- editor.getEditable()— このドキュメント内の編集可能な body 要素。
- editor.insertElement(element)— このドキュメントから作成したノードを挿入します。
- editor.getSelection()— その中の現在の選択範囲。