Mozilla's getting a new look. What do you think? https://mzl.la/brandsurvey

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

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

プロパティ

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

Document.all
ある id を持つすべての要素にアクセスできます。これは古い非標準のインターフェイスですので、代わりに document.getElementById() メソッドを使用してください。
Document.async
非同期のリクエストであることを示すために、Document.load とともに使用します。
Document.characterSet 読取専用
document に適用されている文字セットを返します。
Document.charset 読取専用
Document.characterSet の別名です。代わりに Document.characterSet を使用してください。
Document.compatMode 読取専用
document が Quirks モードと Strict モードのどちらで描画されているかを示します。
Document.contentType 読取専用
現在の document の MIME ヘッダから Content-Type を返します。
Document.doctype 読取専用
現在の document の文書型宣言 (DTD) を返します。
Document.documentElement 読取専用
document の直接の子である Element を返します。HTML 文書では、これは通常 HTML 要素になります。
Document.documentURI 読取専用
文書のロケーションを文字列で返します。
Document.domConfig
DOMConfiguration を返すはずです。
Document.hidden 読取専用
Document.implementation 読取専用
現在の document に関連付けられた DOM 実装を返します。
Document.inputEncoding 読取専用
Document.characterSet の別名です。代わりに Document.characterSet を使用してください。
Document.lastStyleSheetSet 読取専用
直前に有効であったスタイルシートセットの名称を返します。selectedStyleSheetSet に値を設定してスタイルシートを変更するまで、この値は null になります。
Document.mozSyntheticDocument
単独の画像、動画、オーディオファイルなど、ドキュメントが Synthetic である場合に限り true となる Boolean を返します。
Document.mozFullScreen
ドキュメントが フルスクリーンモード であるときに、true になります。
Document.mozFullScreenElement 読取専用  
ドキュメントで現在フルスクリーンモードになっている要素です。
Document.mozFullScreenEnabled 読取専用
現在のドキュメントで Element.mozRequestFullscreen() の呼び出しが成功した場合に、true になります。
Document.pointerLockElement 読取専用
マウスポインタをロックしているときに、mouse イベントのターゲットとして設定された要素を返します。ロックが未実施、ロックが解除済み、あるいは別のドキュメントがターゲットである場合は null になります。
Document.preferredStyleSheetSet 読取専用
ページの作者によって設定された、優先的なスタイルシートを返します。
Document.scrollingElement 読取専用
ドキュメントをスクロールする Element への参照を返します。
Document.selectedStyleSheetSet
現在どのスタイルシートセットを使用しているかを返します。
Document.styleSheets 読取専用
現在の document の stylesheet オブジェクトのリストを返します。
Document.styleSheetSets 読取専用
ドキュメントで使用できるスタイルシートセットのリストを返します。
Document.timeline 読取専用
Document.undoManager 読取専用
Document.URL 読取専用
Returns ...
Document.visibilityState 読取専用
Document.xmlEncoding
XML 宣言によって決められたエンコーディングを返します。
Document.xmlStandalone 廃止 Gecko 10.0
XML 宣言でドキュメントがスタンドアロンである (: DTD の外部パートがドキュメントの混錬つに影響する) 場合に true を、そうでない場合に false を返します。
Document.xmlVersion 廃止 Gecko 10.0
XML 宣言で指定されたバージョン番号、または宣言が省略されている場合に "1.0" を返します。

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

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

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

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

Document.activeElement 読取専用
現在フォーカス状態にある要素を返します。
Document.alinkColor
document body 内のアクティブなリンクの色を取得 / 設定します。
Document.anchors
document 内のすべてのアンカーのリストを返します。
Document.applets
document 内にあるアプレットのリスト (出現順) を返します。
Document.bgColor
現在の document の背景色を取得 / 設定します。
Document.body
現在の document の <body> 要素を返します。
Document.cookie
document の cookie のセミコロンで区切られたリストを返すか、一つの cookie を設定します。
Document.defaultView 読取専用
window オブジェクトへの参照を返します。
Document.designMode
ドキュメント全体を編集可能かを取得 / 設定します。
Document.dir 読取専用
文書の書字方向 (rtl/ltr) を取得 / 設定します。
Document.domain 読取専用
現在のドキュメントのドメインを返します。
Document.embeds 読取専用
現在の document に含まれる、埋め込まれた <embed> 要素のリストを返します。
document.fgColor
現在の document の前景色または文字色を取得 / 設定します。
Document.forms 読取専用
現在の document の <form> 要素のリストを返します。
Document.head 読取専用
現在のドキュメントの <head> 要素を返します。
Document.height
現在の document の高さを取得 / 設定します。
Document.images 読取専用
現在の document の画像のリストを返します。
Document.lastModified 読取専用
document の最終更新日を返します。
Document.linkColor
document 内のハイパーリンクの色を取得 / 設定します。
Document.links 読取専用
document 内のすべてのハイパーリンクのリストを返します。
Document.location 読取専用
現在の document の URI を返します。
Document.plugins 読取専用
利用可能なプラグインのリストを返します。
Document.readyState 読取専用  
ドキュメントの読み込み状況を表す文字列を返します。
Document.referrer 読取専用
このページへリンクしたページの URI を返します。
Document.scripts 読取専用
ドキュメント内のすべての <script> 要素を返します。
Document.title
現在の document のタイトルを設定または取得します。
Document.URL 読取専用
現在の document の URL を含む文字列を返します。
Document.vlinkColor
訪問済みのハイパーリンクの色を取得/設定します。
Document.width
現在の document の幅を返します。

イベントハンドラ

GlobalEventHandlers.onabort
abort イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onafterscriptexecute
afterscriptexecute イベント用のイベント制御コードを表します。
Document.onbeforescriptexecute
beforescriptexecute イベント用のイベント制御コードを表します。
GlobalEventHandlers.onblur
blur イベントが発生したときに呼び出すコードを表す 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 です。
Document.oncopy
copy イベント用のイベント制御コードを表します。
GlobalEventHandlers.oncuechange
cuechange イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.oncut
cut イベント用のイベント制御コードを表します。
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.onerror
error イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onfocus
focus イベントが発生したときに呼び出すコードを表す 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.onloadstart
loadstart イベントが発生したときに呼び出すコードを表す 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 です。
GlobalEventHandler.onmozfullscreenchange
fullscreenchange イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandler.onmozfullscreenerror
fullscreenerror イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpause
pause イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onpaste
paste イベント用のイベント制御コードを表します。
GlobalEventHandlers.onplay
play イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onplaying
playing イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onpointerdown
pointerdown イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onpointerlockchange
pointerlockchange イベント用のイベント制御コードを表します。
Document.onpointerlockerror
pointerlockerror イベント用のイベント制御コードを表します。
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 です。
Document.onreadystatechange
readystatechange イベント用のイベント制御コードを表します。
GlobalEventHandlers.onreset
reset イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onscroll
scroll イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onseeked
seeked イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onseeking
seeking イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onselect
select イベントが発生したときに呼び出すコードを表す EventHandler です。
GlobalEventHandlers.onselectstart
selectstart イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.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.onwaiting
waiting イベントが発生したときに呼び出すコードを表す EventHandler です。
Document.onwheel
wheel イベント用のイベント制御コードを表します。

メソッド

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

Document.adoptNode()
外部ドキュメントからノードを取り込みます。
Document.captureEvents()
Window.captureEvents をご覧ください。
Document.caretPositionFromPoint()
指定した座標またはその付近の CaretPosition を取得します。
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.elementFromPoint()
指定した座標で最前面にある要素を返します。
Document.elementsFromPoint()
指定した座標に存在するすべての要素の配列を返します。
Document.enableStyleSheetsForSet()
指定したスタイルシートセットのスタイルシートを有効化します。
Document.exitPointerLock()
Pointer Lock を解放します。
Document.getElementsByClassName()
(引数で) 与えられた class 名を持つエレメント群のリストを返します。
Document.getElementsByTagName()
(引数で) 与えられたタグ名 (tag name) を持つエレメント群のリストを返します。
Document.getElementsByTagNameNS()
(引数で) 与えられたタグ名 (tag name) と名前空間 (namespace) を持つエレメント群のリストを返します。
Document.importNode()
外部ドキュメントのノードの複製を返します。
Document.normalizeDocument()
エンティティの置換や、テキストノードの正規化などを行います。
Document.registerElement()
Web Component を登録します。
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 より、HTML ドキュメント向けに拡張されています:

document.clear()
最近の Firefox や Internet Explorer を含む大部分の現行ブラウザは、何も行いません。
document.close()
書き込み用のドキュメントストリームを閉じます。
document.execCommand(String command[, Boolean showUI[, String value]])
編集可能なドキュメントで、フォーマットコマンドを実行します。
document.getElementsByName(String name)
(引数で) 与えられた名前 (name) を持つエレメント群のリストを返します。
document.getSelection()
ドキュメントで選択されたテキストに関する Selection オブジェクトを返します。
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)
ドキュメントにテキスト行を書き込みます。

仕様

仕様書 策定状況 コメント
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 の後継になる予定
WHATWG HTML Living Standard
Document の定義
現行の標準 HTMLDocument インターフェイスを Document の拡張に変更
Document Object Model (DOM) Level 3 XPath Specification
XPathEvaluator の定義
勧告 document を拡張する XPathEvaluator インターフェイスを定義
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() を使用できます。

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

 このページの貢献者: yyss, khalid32, acid, ethertank, DavidWalsh, nonki777, Crash, Potappo, Marsf, Mgjbot, Okome, Hfjapancom
 最終更新者: yyss,