Document インターフェイスはブラウザーに読み込まれたウェブページを表し、DOM ツリー であるウェブページのコンテンツへのエントリーポイントとして働きます。DOM ツリーは <body><table> など、多数の要素 を持ちます。これはページの URL を取得したりドキュメントで新たな要素を作成するなど、ドキュメント全体に関わる機能を提供します。

Document インターフェイスは、あらゆる種類のドキュメントに対して共通のプロパティやメソッドを提供します。また、ドキュメントの種類 (例: HTMLXML、SVG など) に応じて、より大規模な API を使用できます。コンテンツタイプ "text/html" で提供される HTML ドキュメントでは、HTMLDocument インターフェイスも実装します。一方 XML や SVG ドキュメントでは、XMLDocument インターフェイスを実装します。

コンストラクター

Document()
新しい Document オブジェクトを作成します。

プロパティ

このインターフェイスは、Node インターフェイスおよび EventTarget インターフェイスのプロパティを継承します。

Document.anchors 読取専用
document 内のすべてのアンカーのリストを返します。
Document.body
現在の document の <body> または <frameset> ノードを返します。
Document.characterSet 読取専用
document に適用されている文字セットを返します。
Document.compatMode 読取専用
document が Quirks モードと Strict モードのどちらで描画されているかを示します。
Document.contentType 読取専用
現在の document の MIME ヘッダーから Content-Type を返します。
Document.doctype 読取専用
現在の document の文書型宣言 (DTD) を返します。
Document.documentElement 読取専用
document の直接の子である Element を返します。HTML 文書では、これは通常 HTMLElement 要素になります。
Document.documentURI 読取専用
文書のロケーションを文字列で返します。
Document.embeds 読取専用
現在の document に含まれる、埋め込まれた <embed> 要素のリストを返します。
Document.forms 読取専用
現在の document の <form> 要素のリストを返します。
Document.head 読取専用
現在のドキュメントの <head> 要素を返します。
Document.hidden 読取専用
Document.images 読取専用
現在の document の画像のリストを返します。
Document.implementation 読取専用
現在の document に関連付けられた DOM 実装を返します。
Document.lastStyleSheetSet 読取専用
直前に有効であったスタイルシートセットの名称を返します。selectedStyleSheetSet に値を設定してスタイルシートを変更するまで、この値は null になります。
Document.links 読取専用
document 内のすべてのハイパーリンクのリストを返します。
Document.mozSyntheticDocument
単独の画像、動画、オーディオファイルなど、ドキュメントが Synthetic である場合に限り true となる Boolean を返します。
Document.mozFullScreenElement 読取専用  
ドキュメントで現在フルスクリーンモードになっている要素です。
Document.mozFullScreenEnabled 読取専用
現在のドキュメントで Element.mozRequestFullscreen() の呼び出しが成功した場合に、true になります。
Document.plugins 読取専用
利用可能なプラグインのリストを返します。
Document.preferredStyleSheetSet 読取専用
ページの作者によって設定された、優先的なスタイルシートを返します。
Document.scripts 読取専用
ドキュメント内のすべての <script> 要素を返します。
Document.scrollingElement 読取専用
ドキュメントをスクロールする Element への参照を返します。
Document.selectedStyleSheetSet
現在どのスタイルシートセットを使用しているかを返します。
Document.styleSheetSets 読取専用
ドキュメントで使用できるスタイルシートセットのリストを返します。
Document.timeline 読取専用
Document.undoManager 読取専用
Document.visibilityState 読取専用
ドキュメントの可視性を表す string を返します。visiblehiddenprerenderunloaded のいずれかの値になります。

Document インターフェイスは、ParentNode インターフェイスによって拡張されます:

ParentNode.children 読取専用
この ParentNode の子であるすべての Element 型のオブジェクトを含む実際の HTMLCollection を返す。
ParentNode.firstElementChild 読取専用
この ParentNode の最初の子である Element を返す。存在しない場合は null を返す。
ParentNode.lastElementChild 読取専用
この ParentNode の最後の子である Element を返す。存在しない場合は null を返す。
ParentNode.childElementCount 読取専用
オブジェクトが持つ子の数を表す unsigned long 値を返す。

HTMLDocument 向けの拡張

HTML ドキュメント用の Document インターフェイスは HTMLDocument インターフェイスから継承する、あるいは HTML5 ドキュメント向けに拡張されています。

Document.cookie
document の cookie のセミコロンで区切られたリストを返すか、1 つの cookie を設定します。
Document.defaultView 読取専用
window オブジェクトへの参照を返します。
Document.designMode
ドキュメント全体を編集可能かを取得 / 設定します。
Document.dir 読取専用
文書の書字方向 (rtl/ltr) を取得 / 設定します。
Document.domain
現在のドキュメントのドメインを取得 / 設定します。
Document.lastModified 読取専用
document の最終更新日を返します。
Document.location 読取専用
現在の document の URI を返します。
Document.readyState 読取専用  
ドキュメントの読み込み状況を表す文字列を返します。
Document.referrer 読取専用
このページへリンクしたページの URI を返します。
Document.title
現在の document のタイトルを設定または取得します。
Document.URL 読取専用
現在の document の URL を含む文字列を返します。

DocumentOrShadowRoot からインクルードしたプロパティ

Document インターフェイスは、DocumentOrShadowRoot ミックスインで定義された以下のプロパティを含んでいます。これらは現在 Chrome のみ実装しています。ほかのブラウザーはいまだに、Document インターフェイスに直接実装しています。

DocumentOrShadowRoot.activeElement 読取専用
フォーカスを持つシャドウツリーがある Element を返します。
Document.fullscreenElement 読取専用
ドキュメントで現在フルスクリーンモードになっている要素です。
DocumentOrShadowRoot.pointerLockElement 読取専用
マウスポインターをロックしているときに、mouse イベントのターゲットとして設定された要素を返します。ロックが未実施、ロックが解除済み、あるいは別のドキュメントがターゲットである場合は null になります。
DocumentOrShadowRoot.styleSheets 読取専用
ドキュメントへ明示的にリンクまたは埋め込まれているスタイルシートの CSSStyleSheet オブジェクトの、StyleSheetList を返します。

イベントハンドラー

Document.onafterscriptexecute
afterscriptexecute イベント用のイベント制御コードを表します。
Document.onbeforescriptexecute
beforescriptexecute イベント用のイベント制御コードを表します。
Document.oncopy
copy イベント用のイベント制御コードを表します。
Document.oncut
cut イベント用のイベント制御コードを表します。
Document.onfullscreenchange
fullscreenchange イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onfullscreenerror
fullscreenerror イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onpaste
paste イベント用のイベント制御コードを表します。
Document.onpointerlockchange
pointerlockchange イベント用のイベント制御コードを表します。
Document.onpointerlockerror
pointerlockerror イベント用のイベント制御コードを表します。
Document.onreadystatechange
readystatechange イベント用のイベント制御コードを表します。
Document.onselectionchange
selectionchange イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onvisibilitychange
visibilitychange イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onwheel
wheel イベント用のイベント制御コードを表します。

Document インターフェイスは、GlobalEventHandlers インターフェイスによって拡張されます:

GlobalEventHandlers.onabort
abort イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onanimationcancel
CSS animation がキャンセルされたことを示す、animationcancel イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onanimationend
CSS animation の再生が停止したことを示す、animationend イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onanimationiteration
CSS animation のアニメーションシーケンスが新たなな繰り返しに入ったことを示す、animationiteration イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onanimationstart
CSS animation の再生が開始したことを示す、animationstart イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onauxclick
入力デバイスで非プライマリーボタン (例えばマウスの中ボタン) が押下されたことを示す、auxclick イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onblur
blur イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onerror
error イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onfocus
focus イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oncancel
cancel イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oncanplay
canplay イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oncanplaythrough
canplaythrough イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onchange
change イベントが発生した時にときび出すコードを表す EventHandler です。
GlobalEventHandlers.onclick
click イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onclose
close イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oncontextmenu
contextmenu イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oncuechange
cuechange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondblclick
dblclick イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondrag
drag イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragend
dragend イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragenter
dragenter イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragexit
dragexit イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragleave
dragleave イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragover
dragover イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondragstart
dragstart イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondrop
drop イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ondurationchange
durationchange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onemptied
emptied イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onended
ended イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ongotpointercapture
gotpointercapture イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oninput
input イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.oninvalid
invalid イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onkeydown
keydown イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onkeypress
keypress イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onkeyup
keyup イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onload
load イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onloadeddata
loadeddata イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onloadedmetadata
loadedmetadata イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onloadend
loadend イベントが発生した (リソースの読み込みの進行が停止した) ときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onloadstart
loadstart イベントが発生した (リソースの読み込みを開始した) ときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onlostpointercapture
lostpointercapture イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmousedown
mousedown イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmouseenter
mouseenter イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmouseleave
mouseleave イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmousemove
mousemove イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmouseout
mouseout イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmouseover
mouseover イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmouseup
mouseup イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onmousewheel
mousewheel イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpause
pause イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onplay
play イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onplaying
playing イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerdown
pointerdown イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointermove
pointermove イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerup
pointerup イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointercancel
pointercancel イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerover
pointerover イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerout
pointerout イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerenter
pointerevent イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerleave
pointerleave イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerlockchange
pointerlockchange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerlockerror
pointerlockerror イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onprogress
progress イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onratechange
ratechange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onreset
reset イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onscroll
scroll イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onseeked
seeked イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onseeking
seeking イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onselect
select イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onselectstart
selectstart イベントが発生した (ユーザーがウェブページで新たにテキスト選択を開始した) ときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onselectionchange
selectionchange イベントが発生した (ウェブページで選択されたテキストが替わった) ときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onshow
show イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onsort
sort イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onstalled
stalled イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onsubmit
submit イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onsuspend
suspend イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontimeupdate
timeupdate イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onvolumechange
volumechange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontouchcancel
touchcancel イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontouchend
touchend イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontouchmove
touchmove イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontouchstart
touchstart イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.ontransitioncancel
CSS transition がキャンセルされたことを示す、transitioncancel イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.ontransitionend
CSS transition の再生が停止したことを示す、transitionend イベントが送信されたときに呼び出される EventHandler です。
GlobalEventHandlers.onwaiting
waiting イベントが発生したときに呼び出すコードを表す EventHandler です。

非推奨プロパティ

Document.alinkColor
document body 内のアクティブなリンクの色を取得 / 設定します。
Document.all
ドキュメント内のすべての要素にアクセスできます。これは古い非標準のプロパティですので、使用しないようにしてください。
Document.applets 読取専用
document 内にあるアプレットのリスト (出現順) を返します。
Document.async
非同期のリクエストであることを示すために、Document.load とともに使用します。
Document.bgColor
現在の document の背景色を取得 / 設定します。
Document.charset 読取専用
Document.characterSet の別名です。代わりに Document.characterSet を使用してください。
Document.domConfig
DOMConfiguration オブジェクトを返すはずです。
document.fgColor
現在の document の前景色または文字色を取得 / 設定します。
Document.fullscreen
ドキュメントが フルスクリーンモード であるときに、true になります。
Document.height
現在の document の高さを取得 / 設定します。
Document.inputEncoding 読取専用
Document.characterSet の別名です。代わりに Document.characterSet を使用してください。
Document.linkColor
document 内のハイパーリンクの色を取得 / 設定します。
Document.vlinkColor
訪問済みのハイパーリンクの色を取得/設定します。
Document.width
現在の document の幅を返します。
Document.xmlEncoding
XML 宣言によって決められたエンコーディングを返します。
Document.xmlStandalone Gecko 10.0 で廃止
XML 宣言でドキュメントがスタンドアロンである (: DTD の外部パートがドキュメントのコンテンツに影響する) 場合に true を、そうでない場合に false を返します。
Document.xmlVersion Gecko 10.0 で廃止
XML 宣言で指定されたバージョン番号、または宣言が省略されている場合に "1.0" を返します。

メソッド

このインターフェイスは、Node インターフェイスおよび EventTarget インターフェイスのメソッドを継承します。

Document.adoptNode()
外部ドキュメントからノードを取り込みます。
Document.captureEvents()
Window.captureEvents をご覧ください。
Document.caretRangeFromPoint()
指定した座標にあるドキュメントの断片の Range オブジェクトを取得します。
Document.createAttribute()
新しい Attr オブジェクトを生成して、返します。
Document.createAttributeNS()
指定したネームスペースに新しい属性ノードを生成して、返します。
Document.createCDATASection()
新しい CDATA ノードを生成して、返します。
Document.createComment()
新しいコメントノードを生成して、返します。
Document.createDocumentFragment()
新しいドキュメント断片を生成します。
Document.createElement()
指定したタグ名で新しい要素を生成します。
Document.createElementNS()
指定したタグ名およびネームスペース URI で、新しい要素を生成します。
Document.createEntityReference()
新しい Entity Reference オブジェクトを生成して、返します。
Document.createEvent()
Event オブジェクトを生成します。
Document.createNodeIterator()
NodeIterator オブジェクトを生成します。
Document.createProcessingInstruction()
新しい ProcessingInstruction オブジェクトを生成します。
Document.createRange()
Range オブジェクトを生成します。
Document.createTextNode()
テキストノードを生成します。
Document.createTouch()
Touch オブジェクトを生成します。
Document.createTouchList()
TouchList オブジェクトを生成します。
Document.createTreeWalker()
TreeWalker オブジェクトを生成します。
Document.enableStyleSheetsForSet()
指定したスタイルシートセットのスタイルシートを有効化します。
Document.exitPointerLock()
Pointer Lock を解放します。
Document.getAnimations()
現在実行中であるすべての Animation オブジェクトの配列を返します。この対象要素は、document の子孫要素です。
Document.getElementsByClassName()
(引数で) 与えられた class 名を持つエレメント群のリストを返します。
Document.getElementsByTagName()
(引数で) 与えられたタグ名 (tag name) を持つエレメント群のリストを返します。
Document.getElementsByTagNameNS()
(引数で) 与えられたタグ名 (tag name) と名前空間 (namespace) を持つエレメント群のリストを返します。
Document.importNode()
外部ドキュメントのノードの複製を返します。
Document.normalizeDocument()
エンティティの置換や、テキストノードの正規化などを行います。
Document.releaseCapture()
このドキュメント内の要素でマウスキャプチャーを行っている場合に、マウスキャプチャーを解放します。
Document.releaseEvents()
Window.releaseEvents() をご覧ください。
Document.routeEvent() Gecko 24 で廃止
Window.routeEvent() をご覧ください。
Document.mozSetImageElement()
指定した ID を持つ要素の背景画像として使用する要素を変更できます。

Document インターフェイスは、ParentNode インターフェイスによって拡張されます:

document.getElementById(String id)
特定の id を持つエレメントへのオブジェクト参照を返します。
document.querySelector(String selector)
指定したセレクタにマッチする、ドキュメント内で最初の要素ノードを返します。
document.querySelectorAll(String selector)
指定したセレクタにマッチする、ドキュメント内のすべての要素ノードのリストを返します。

Document インターフェイスは、XPathEvaluator インターフェイスによって拡張されます:

document.createExpression(String expression, XPathNSResolver resolver)
(繰り返し) 評価に使用できる XPathExpression をコンパイルします。
document.createNSResolver(Node resolver)
XPathNSResolver オブジェクトを生成します。
document.evaluate(String expression, Node contextNode, XPathNSResolver resolver, Number type, Object result)
XPath 構文を評価します。

HTML ドキュメント向けの拡張

HTML ドキュメント用の Document インターフェイスは HTMLDocument インターフェイスから継承する、あるいは HTML5 ドキュメント向けに拡張されています:

document.clear()
最近の Firefox や Internet Explorer を含む大部分の現行ブラウザーは、何も行いません。
document.close()
書き込み用のドキュメントストリームを閉じます。
document.execCommand(String command[, Boolean showUI[, String value]])
編集可能なドキュメントで、フォーマットコマンドを実行します。
document.getElementsByName(String name)
(引数で) 与えられた名前 (name) を持つエレメント群のリストを返します。
document.hasFocus()
指定したドキュメント内にフォーカスがある場合に、true を返します。
document.open()
書き込み用のドキュメントストリームを開きます。
document.queryCommandEnabled(String command)
現在の領域でフォーマットコマンドを実行できる場合に、true を返します。
document.queryCommandIndeterm(String command)
現在の領域でフォーマットコマンドの状態が不確定である場合に true を返します。
document.queryCommandState(String command)
現在の領域でフォーマットコマンドを実行した場合に true を返します。
document.queryCommandSupported(String command)
現在の領域でフォーマットコマンドをサポートしている場合に、true を返します。
document.queryCommandValue(String command)
指定したフォーマットコマンドについて、現在の領域における値を返します。
document.write(String text)
ドキュメントにテキストを書き込みます。
document.writeln(String text)
ドキュメントにテキスト行を書き込みます。

DocumentOrShadowRoot からインクルードしたメソッド

Document インターフェイスは、DocumentOrShadowRoot ミックスインで定義された以下のメソッドを含んでいます。これらは現在 Chrome のみ実装しています。ほかのブラウザーはいまだに、Document インターフェイスに実装しています。

DocumentOrShadowRoot.getSelection()
ユーザーが現在選択しているテキスト範囲、または現在のキャレットの位置を表す Selection オブジェクトを返します。
DocumentOrShadowRoot.elementFromPoint()
指定した座標で最前面にある要素を返します。
DocumentOrShadowRoot.elementsFromPoint()
指定した座標に存在するすべての要素の配列を返します。
DocumentOrShadowRoot.caretPositionFromPoint()
キャレットがある DOM ノードと、ノード内でキャレットあがある文字のオフセットを持つ CaretPosition オブジェクトを返します。

仕様

仕様書 策定状況 コメント
Page Visibility (Second Edition)
onvisibilitychange の定義
勧告 onvisibilitychange を追加
Selection API
Extend Document and GlobalEventHandlers の定義
草案 onselectstart および onselectionchange を追加
Document Object Model (DOM) Level 1 Specification
Document の定義
廃止された インターフェイスを最初に定義
Document Object Model (DOM) Level 2 Core Specification
Document の定義
廃止された DOM 1 の後継
Document Object Model (DOM) Level 3 Core Specification
Document の定義
廃止された DOM 2 の後継
DOM
Document の定義
現行の標準 DOM 3 の後継になる予定
HTML Living Standard
Document の定義
現行の標準 HTMLDocument インターフェイスを Document の拡張に変更
Document Object Model (DOM) Level 3 XPath Specification
XPathEvaluator の定義
勧告 document を拡張する XPathEvaluator インターフェイスを定義
Page Visibility (Second Edition)
Document の定義
勧告 Document インターフェイスを、visibilityState および hidden 属性で拡張
HTML Editing APIs
Document の定義
編集者草案 Document インターフェイスを拡張
CSS Object Model (CSSOM) View Module
Document の定義
草案 Document インターフェイスを拡張
CSS Object Model (CSSOM)
Document の定義
草案 Document インターフェイスを拡張
Pointer Lock
Document の定義
勧告候補 Document インターフェイスを拡張

ブラウザーの互換性に関する補足

Firefox に関する補足

Mozilla は、XUL コンテンツ限定の非標準プロパティを定義しています:

document.currentScript
現在実行中の <script> 要素を返します。
document.documentURIObject
(Mozilla アドオン限定!) ドキュメントの URI を表す nsIURI オブジェクトを返します。このプロパティは特権付き (UniversalXPConnect 権限) の JavaScript コード内に限り、特別な意味を持ちます。
document.popupNode
ポップアップを表示させたノードを返します。
document.tooltipNode
現行のツールチップのターゲットであるノードを返します。

Mozilla では、非標準のメソッドも定義しています:

document.execCommandShowHelp Gecko 14.0 で廃止
このメソッドは何も行わずに例外が発生することから、Gecko 14.0 (Firefox 14.0 / Thunderbird 14.0 / SeaMonkey 2.11) で削除しました。
document.getBoxObjectFor
代わりに Element.getBoundingClientRect() メソッドを使用してください。
document.loadOverlay
XUL overlay を動的に読み込みます。これは XUL ドキュメントのみで動作します。
document.queryCommandText Gecko 14.0 で廃止
このメソッドは何も行わずに例外が発生することから、Gecko 14.0 (Firefox 14.0 / Thunderbird 14.0 / SeaMonkey 2.11) で削除しました。

Internet Explorer に関する補足

Microsoft では、非標準のプロパティを定義しています:

document.fileSize*
ドキュメントのサイズをバイト単位で返します。Internet Explorer 11 より、このプロパティはサポートしません。MSDN をご覧ください。

Document インターフェイスで、Node インターフェイス由来のメソッドをすべてサポートしているわけではありません:

document.contains
回避策として、document.body.contains() を使用できます。

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応 あり あり あり あり あり あり
Document() constructor60 ? ? ?47 ?
URL あり あり あり あり あり あり
adoptNode あり ? あり ? ? ?
alinkColor あり ? あり ? ? ?
all あり ? あり ? ? ?
anchors あり ? あり ? ? ?
applets あり ? あり ? ? ?
async なし ? なし ? ? ?
bgColor あり ? あり ? ? ?
body1 あり2169.64
captureEvents あり ? あり ? ? ?
caretRangeFromPoint431220 なし15 あり
characterSet

45

あり2 3

あり4

あり

あり3

?4

あり

443

あり4

?

?3

?4

?

?3

?4

?

93

?4

clear あり ? あり ? ? ?
close あり ? あり ? ? ?
compatMode あり ? あり ? ? ?
contains あり ? あり なし ? ?
contentType あり ? あり ? ? ?
cookie あり あり あり あり あり あり
createAttribute あり あり

44

4 — 445

あり あり あり
createAttributeNS あり ? あり ? ? ?
createCDATASection あり ? あり ? ? ?
createComment あり ? あり ? ? ?
createDocumentFragment あり あり あり あり あり あり
createElement あり あり あり6 あり あり あり
createElementNS あり あり あり6 あり あり あり
createEntityReference なし ? なし ? ? ?
createEvent あり ? あり ? ? ?
createExpression あり ? あり ? ? ?
createNSResolver あり ? あり ? ? ?
createNodeIterator あり ? あり ? ? ?
createProcessingInstruction あり ? あり ? ? ?
createRange あり ? あり ? ? ?
createTextNode あり あり あり あり あり ?
createTouch

22 — 66

597

あり18 なし あり — 53 なし
createTouchList22 あり18 なし なし なし
createTreeWalker4 あり2993
currentScript29 あり4 なし168
defaultView あり あり あり9 あり あり
designMode あり あり あり あり あり あり
dir あり あり あり8 あり ? ?
doctype あり ? あり ? ? ?
documentElement あり ? あり ? ? ?
documentURI あり ? あり あり あり あり
documentURIObject なし なし あり — 579 なし なし なし
domConfig なし ? なし ? ? ?
domain あり ? あり ? ? ?
embeds あり ? あり ? ? ?
enableStyleSheetsForSet なし ? あり ? ? ?
evaluate1 あり1.5 なし95
execCommand あり あり あり あり あり あり
execCommandShowHelp なし なし あり — 1410 なし なし なし
exitFullscreen

45

あり webkit

?

911

4912

? ? ?
exitPointerLock

あり

あり webkit

あり

50

あり moz

? ? ?
fgColor あり ? あり ? ? ?
fileSize なし なし なし あり — 11 なし なし
forms あり ? あり ? ? ?
fullscreen あり13 ?

914

4912

? ? あり13
fullscreenEnabled

45

あり -webkit

?

4716

10 moz

? ? ?
getAnimations なし なし なし17 なし なし なし
getBoxObjectFor なし なし あり —? なし なし なし
getElementById1 あり15.571
getElementsByClassName あり あり49 あり あり
getElementsByName あり あり あり ? あり あり
getElementsByTagName あり ? あり ? ? ?
getElementsByTagNameNS あり ? あり ? ? ?
hasFocus30 あり36 なし あり
head あり あり49115
height なし ? なし ? ? ?
hidden

33

13 webkit

あり

1818

10 — 52 -moz-

1012.17
images あり ? あり ? ? ?
implementation あり ? あり ? ? ?
importNode あり あり499 あり
lastModified あり ? あり ? ? ?
lastStyleSheetSet なし ? あり ? ? ?
linkColor あり ? あり ? ? ?
links あり あり あり あり あり あり
loadOverlay なし なし

6119 20 21 22

あり — 6119 21

なし なし なし
location あり あり あり あり あり あり
mozSetImageElement なし なし なし なし なし なし
mozSyntheticDocument なし なし なし なし なし なし
normalizeDocument なし ? なし ? ? ?
onafterscriptexecute なし ? あり ? ? ?
onbeforescriptexecute なし ? あり ? ? ?
oncopy あり ? あり ? ? ?
oncut あり ? あり ? ? ?
onfullscreenchange45 ?4716 ? ? ?
onfullscreenerror45 ?4716 ? ? ?
onpaste あり ? あり ? ? ?
onpointerlockchange あり ? あり ? ? ?
onpointerlockerror あり ? あり ? ? ?
onreadystatechange あり ? あり ? ? ?
onselectionchange49 あり4523 24 ? ? ?
onvisibilitychange

33

13 webkit

あり561012.1257
open あり あり あり あり あり あり
origin41 ? なし あり あり ?
plugins あり ? あり ? ? ?
popupNode なし なし あり19 なし なし なし
preferredStyleSheetSet あり ? あり ? ? ?
queryCommandEnabled17 あり

41

9 — 4126

4 ? ?
queryCommandIndeterm あり ? あり ? ? ?
queryCommandState あり あり あり あり あり あり
queryCommandSupported17 あり

41

9 — 4127

4 ? ?
queryCommandText なし なし あり — 1410 なし なし なし
queryCommandValue あり ? あり ? ? ?
querySelector1 あり3.58103.2
querySelectorAll1 あり3.58103.2
readyState あり あり4

928

829

11305
referrer あり ? あり ? ? ?
releaseCapture なし ? あり ? ? ?
releaseEvents あり ? あり ? ? ?
routeEvent なし ? なし ? ? ?
scripts あり あり94 あり あり
scrollingElement44 あり

48

47 — 4831

なし319
selectedStyleSheetSet あり ? あり ? ? ?
styleSheetSets なし ? あり ? ? ?
timeline なし なし なし32 あり あり あり
title あり ? あり ? ? ?
tooltipNode なし なし あり19 なし なし なし
undoManager なし ? なし ? ? ?
visibilityState

33

13 webkit

?

18

10 — 52 -moz-

1012.1257
vlinkColor なし ? あり ? ? ?
width なし ? なし ? ? ?
write あり ? あり ? ? ?
writeln あり ? あり ? ? ?
xmlEncoding あり ? なし ? ? ?
xmlStandalone あり ? なし ? ? ?
xmlVersion あり ? なし ? ? ?
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり あり あり あり あり あり ?
Document() constructor6060 ? ?47 ? ?
URL あり あり あり あり あり あり ?
adoptNode あり あり ? あり ? ? ?
alinkColor あり あり ? あり ? ? ?
all あり あり ? あり ? ? ?
anchors あり あり ? あり ? ? ?
applets あり あり ? あり ? ? ?
async なし なし ? なし ? ? ?
bgColor あり あり ? あり ? ? ?
body あり あり あり あり1 あり5 ?
captureEvents あり あり ? あり ? ? ?
caretRangeFromPoint4343122015 あり ?
characterSet

45

あり3

あり4

45

あり3

あり4

あり

あり3

?4

あり

443

あり4

?

?3

?4

?

?3

?4

?
clear あり あり ? あり ? ? ?
close あり あり ? あり ? ? ?
compatMode あり あり ? あり ? ? ?
contains あり あり ? あり ? ? ?
contentType あり あり ? あり ? ? ?
cookie あり あり あり あり あり あり ?
createAttribute あり あり あり

44

4 — 445

あり あり ?
createAttributeNS あり あり ? あり ? ? ?
createCDATASection あり あり ? あり ? ? ?
createComment あり あり ? あり ? ? ?
createDocumentFragment あり あり あり あり あり あり ?
createElement あり あり あり あり あり あり ?
createElementNS あり あり あり あり あり あり ?
createEntityReference なし なし ? なし ? ? ?
createEvent あり あり ? あり ? ? ?
createExpression あり あり ? あり ? ? ?
createNSResolver あり あり ? あり ? ? ?
createNodeIterator あり あり ? あり ? ? ?
createProcessingInstruction あり あり ? あり ? ? ?
createRange あり あり ? あり ? ? ?
createTextNode あり あり あり あり あり ? ?
createTouch

22 — 66

597

22 — 66

597

あり6 あり — 53 あり ?
createTouchList2222 あり6 あり あり ?
createTreeWalker あり あり あり493 ?
currentScript あり あり あり あり あり8 ?
defaultView あり あり ? あり ? ? ?
designMode あり あり ? ? ? ? ?
dir あり あり あり あり8 ? ? ?
doctype あり あり ? あり ? ? ?
documentElement あり あり ? あり ? ? ?
documentURI あり あり ? あり あり あり ?
documentURIObject なし なし なし あり — 579 なし なし ?
domConfig なし なし ? なし ? ? ?
domain あり あり ? あり ? ? ?
embeds あり あり ? あり ? ? ?
enableStyleSheetsForSet なし なし ? あり ? ? ?
evaluate あり あり あり あり あり あり ?
execCommand あり あり あり あり あり あり ?
execCommandShowHelp なし なし なし あり — 1410 なし なし ?
exitFullscreen

45

あり webkit

45

あり webkit

?

911

4912

? ? ?
exitPointerLock

あり

あり webkit

あり

あり webkit

あり

50

あり moz

? ? ?
fgColor あり あり ? あり ? ? ?
fileSize なし なし なし なし なし なし ?
forms あり あり ? あり ? ? ?
fullscreen ? あり13 ?

915

4912

? ? ?
fullscreenEnabled

45

あり -webkit

45

あり -webkit

?

4716

10 moz

? ? ?
getAnimations なし なし なし なし なし なし ?
getBoxObjectFor なし なし なし なし なし なし ?
getElementById11 あり あり61 ?
getElementsByClassName あり あり あり4 あり あり ?
getElementsByName あり あり あり あり あり あり ?
getElementsByTagName あり あり ? あり ? ? ?
getElementsByTagNameNS あり あり ? あり ? ? ?
hasFocus あり あり あり4 なし あり ?
head あり あり あり4 あり あり ?
height なし なし ? なし ? ? ?
hidden あり あり あり

1818

10 — 52 -moz-

12.17 ?
images あり あり ? あり ? ? ?
implementation あり あり ? あり ? ? ?
importNode あり あり1249 あり ?
lastModified あり あり ? あり ? ? ?
lastStyleSheetSet なし なし ? あり ? ? ?
linkColor あり あり ? あり ? ? ?
links あり あり あり あり あり あり ?
loadOverlay なし なし なし なし なし なし ?
location あり あり あり あり あり あり ?
mozSetImageElement なし なし なし なし なし なし ?
mozSyntheticDocument なし なし なし なし なし なし ?
normalizeDocument なし なし ? なし ? ? ?
onafterscriptexecute なし なし ? あり ? ? ?
onbeforescriptexecute なし なし ? あり ? ? ?
oncopy あり あり ? あり ? ? ?
oncut あり あり ? あり ? ? ?
onfullscreenchange4545 ?4716 ? ? ?
onfullscreenerror4545 ?4716 ? ? ?
onpaste あり あり ? あり ? ? ?
onpointerlockchange あり あり ? あり ? ? ?
onpointerlockerror あり あり ? あり ? ? ?
onreadystatechange あり あり ? あり ? ? ?
onselectionchange4949 あり4523 24 ? ? ?
onvisibilitychange3333 あり5612.1257 ?
open あり あり あり あり あり あり ?
origin あり41 ? なし あり ? ?
plugins あり あり ? あり ? ? ?
popupNode なし なし なし なし なし なし ?
preferredStyleSheetSet あり あり ? あり ? ? ?
queryCommandEnabled あり あり あり

41

9 — 4126

? ? ?
queryCommandIndeterm あり あり ? あり ? ? ?
queryCommandState あり あり あり あり あり あり ?
queryCommandSupported あり あり あり

41

9 — 4127

? ? ?
queryCommandText なし なし なし あり — 1410 なし なし ?
queryCommandValue あり あり ? あり ? ? ?
querySelector あり あり あり あり103.2 ?
querySelectorAll あり あり あり あり10 あり ?
readyState あり あり あり411305 ?
referrer あり あり ? あり ? ? ?
releaseCapture なし なし ? あり ? ? ?
releaseEvents あり あり ? あり ? ? ?
routeEvent なし なし ? なし ? ? ?
scripts あり あり あり9 あり あり ?
scrollingElement4444 あり あり319 ?
selectedStyleSheetSet あり あり ? あり ? ? ?
styleSheetSets なし なし ? あり ? ? ?
timeline なし なし なし なし32 あり あり ?
title あり あり ? あり ? ? ?
tooltipNode なし なし なし なし なし なし ?
undoManager なし なし ? なし ? ? ?
visibilityState3333 ?

18

10 — 52 -moz-

12.1257 ?
vlinkColor なし なし ? あり ? ? ?
width なし なし ? なし ? ? ?
write あり あり ? あり ? ? ?
writeln あり あり ? あり ? ? ?
xmlEncoding あり あり ? なし ? ? ?
xmlStandalone あり あり ? なし ? ? ?
xmlVersion あり あり ? なし ? ? ?

1. The body property was implemented on the HTMLDocument interface in Firefox for a long time, hence document.body would not return the <body> element if the document's Content-Type was not set to text/html or application/xhtml+xml (or if it came from DOMParser.parseFromString without the text/html type being used). This has been fixed in Firefox 60.

2. charset alias was made read-only in 45.

3. Supported as charset.

4. Supported as inputEncoding.

5. The parameter was not converted to its lowercase variant.

6. Doesn't conform to the DOM spec for XUL and XHTML documents: localName and namespaceURI are not set to null on the created element.

7. All parameters optional

8. Incorrect behavior before Firefox 23.

9. Available only to legacy extensions.

10. This method never did anything and always threw an exception.

11. Supported as mozCancelFullScreen.

12. From version 49: this feature is behind the full-screen-api.unprefix.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

13. Supported as webkitIsFullScreen.

14. Supported as mozFullScreen.

15. Supported as mozFullSreen.

16. From version 47: this feature is behind the full-screen-api.unprefix.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

17. Currently available only in Firefox Nightly and Firefox Developer Edition.

18. Since Firefox 56 it also returns true on Mac when the window is completely hidden by another non-translucent application.

19. Available only to XUL documents.

20. If a XUL document attempts to load an overlay without the compile flag, an error will be thrown (see bug 1448162).

21. See bug 1449791

22. From version 61: this feature is behind the MOZ_BREAK_XUL_OVERLAYS compile flag (needs to be set to False).

23. Flag not necessary on Nightly

24. From version 45: this feature is behind the dom.select_events.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

25. Doesn't fire the visibilitychange event when the browser window is minimized, nor when hidden is set to true.

26. queryCommandEnabled with arguments cut, copy or paste would throw errors unless the script had special privileges.

27. paste argument incorrectly returned true when the paste feature was available but the calling script had insufficient privileges to actually perform the action.

28. Internet Explorer 9 and 10 have bugs where the 'interactive' state can be fired too early before the document has finished parsing.

29. Only supports 'complete'.

30. Opera Presto fires 'complete' late after the 'load' event (in an incorrect order as per HTML5 standard specification).

31. From version 47 until version 48 (exclusive): this feature is behind the dom.document.scrollingElement.enabled preference. To change preferences in Firefox, visit about:config.

32. Currently only supported in Firefox Nightly (version 48).

ドキュメントのタグと貢献者

最終更新者: yyss,