編集可能なドキュメントが含まれるフレーム。editor ドキュメントを作成するには、editortype
属性の値を html
に設定します。Mozilla は HTML editor と plaintext editor の二通りの editor を提供しています。editor は編集ユーザインタフェースを提供しないため、あなた自身がそれを備えることになります。しかし、テキスト編集および画像のサイズ変更、table の行とセルの編集は可能です。editor に editortype
属性を設定しないときは、makeEditable
メソッドを使用して編集を有効にしなければなりません。
editor に読み込ませる document を指定するには src
属性を使用します。しかし、src
属性をはじめから XUL ファイル内の editor
タグに指定しておくと問題が起こるため、次のいずれかのようにしてください:
- 外側の window が読み込まれた後、editor 上に
src
属性を設定する。例えばonload
ハンドラ内など。また、ファイルダイアログからユーザが選択したものをsrc
属性に設定するかもしれません。この場合は editor 上に editortype 属性を設定してください。 - editor に読み込まれた document を編集可能にするために
makeEditable
メソッドを呼び出す。 - editor に読み込まれた document の design モードを有効にする。
新しいドキュメントを編集するには、about:blank
に src
属性を設定します。
editor の多くの機能へアクセスするには、あなたのアプリケーションが拡張機能や chrome の一部でなければなりません。Web サーバからの URL を通して読み込まれる XUL アプリケーションは、editor のほとんどの機能へアクセスすることができません。
Gecko の埋め込みリッチテキストエディタについての詳しい情報は、Rich text editing および Midas ページを参照してください。
- 属性
- editortype, src, type
- プロパティ
- accessibleType, commandManager, contentDocument, contentWindow, docShell, editingSession, editortype, webBrowserFind, webNavigation
- メソッド
- getEditor, getHTMLEditor, makeEditable
例
この例は、読み込まれた HTML ドキュメントの designMode プロパティを設定して editor を編集可能にする方法です:
<script language="javascript"> function initEditor(){ // この関数は editor をセットアップするために呼び出される var editor = document.getElementById("myEditor"); editor.contentDocument.designMode = 'on'; } </script> <editor id="myEditor" editortype="html" src="about:blank" flex="1" type="content-primary"/>
一度編集可能になると、document は特別な書式設定を持ち、document.execCommand メソッドを使用して他の HTML 片をそこに追加することができます:
var editor = document.getElementById("myEditor"); // 現在の選択範囲をボールド体に切り替える editor.contentDocument.execCommand("bold", false, null);
詳しい command 文字列は Midas の概要をご覧ください。
属性
-
editortype
- 型: 下記の値のいずれか一つ
- 使用する editor の種類。この値は、editor 内の document の content type に依存して優先されます。
html
: HTML エディタ。text
: テキストのみのエディタ。
-
src
- 型: URL
- 要素内に表示するコンテンツの URL。
-
type
- 型: 文字列型
- 文字列を
content-primary
に設定すると、この editor はページの最初のコンテンツになります。最初のコンテンツを持つ window は、window.content
を使用して、より便利に検索することができます。
プロパティ
-
accessibleType
- 型: 整数型
- 要素の accessibility オブジェクトの種類を示す値。
-
commandManager
- 型: nsICommandManager
- command manager は editor 上の操作を扱います。
-
contentDocument
- 型: document
- この読み取り専用のプロパティは要素内の document オブジェクトを含みます。
contentWindow
- 型: window
- この読み取り専用のプロパティは要素内の window オブジェクトを含みます。
-
docShell
- 型: nsIDocShell
- この読み取り専用のプロパティは document の nsIDocShell オブジェクトを含みます。
-
editingSession
- 型: nsIEditingSession
- editor の初期化に使用される editing session。通常、これを使用する必要はありません。
-
editortype
- 型: 下記の値のいずれか一つ
- 使用する editor の種類。この値は、editor 内の document の content type に依存して優先されます。
html
: HTML エディタ。text
: テキストのみのエディタ。
-
webBrowserFind
- 型: nsIWebBrowserFind
- この読み取り専用のプロパティは、document 内のテキストの検索に使用することができる nsIWebBrowserFind オブジェクトを含みます。
メソッド
getEditor( window )
- 戻り値の型: nsIEditor
- document を操作するための多くのメソッドを含む、 editor のための編集インタフェースを返します。引数として editor の
contentWindow
を渡してください。
-
getHTMLEditor( window )
-
戻り値の型:
nsIHTMLEditor
-
HTML document を操作するためのメソッドを含む、 editor のための HTML 編集インタフェースを返します。引数として editor の
contentWindow
を渡してください。
makeEditable( editortype, waitForLoad )
- 戻り値の型: 戻り値無し
- この関数は editor による編集を有効にします。
editortype
としてtext
またはhtml
を指定してください。
XUL 要素からの継承
blur
, click
, doCommand
, focus
, getElementsByAttribute
, getElementsByAttributeNS
DOM 要素からの継承
addEventListener()
, appendChild()
, compareDocumentPosition, dispatchEvent()
, getAttribute()
, getAttributeNode()
, getAttributeNodeNS()
, getAttributeNS()
, getElementsByTagName()
, getElementsByTagNameNS()
, getFeature, getUserData, hasAttribute()
, hasAttributeNS()
, hasAttributes()
, hasChildNodes()
, insertBefore()
, isEqualNode, isSameNode, isSupported()
, lookupNamespaceURI, lookupPrefix, normalize()
, removeAttribute()
, removeAttributeNode()
, removeAttributeNS()
, removeChild()
, removeEventListener()
, replaceChild()
, setAttribute()
, setAttributeNode()
, setAttributeNodeNS()
, setAttributeNS()
, setUserData
関連項目
- インタフェース
- nsIAccessibleProvider