Document

Document 介面代表所有在瀏覽器中載入的網頁,也是作為網頁內容 DOM 樹 (en-US)(包含如 <body> (en-US)<table> 與其它的元素)的進入點。Document 提供了網頁文件所需的通用函式,例如取得頁面 URL 或是建立網頁文件中新的元素節點等。

EventTarget Node Document

Document 介面描述了各種類型文件的共同屬性與方法。根據文件的類型(如 HTMLXML (en-US)、SVG 等),也會擁有各自的 API:HTML 文件(content type 為 text/html)實作了 HTMLDocument 介面,而 XML 及 SVG 文件實作了 XMLDocument (en-US) 介面。

請注意 window.document 物件為 HTMLDocument 所建構。

屬性

這個介面繼承了 Node 以及 EventTarget 介面。

Document.all (en-US) 已棄用 非標準

Provides access to all elements with an id. This is a legacy, non-standard interface and you should use the document.getElementById() (en-US) method instead.

Document.async (en-US) 已棄用

Used with Document.load to indicate an asynchronous request.

Document.characterSet (en-US) Read only

Returns the character set being used by the document.

Document.charset (en-US) Read only 已棄用

Alias of Document.characterSet (en-US). Use this property instead.

Document.compatMode (en-US) Read only 實驗性質

Indicates whether the document is rendered in quirks or strict mode.

Document.contentType (en-US) Read only 實驗性質

Returns the Content-Type from the MIME Header of the current document.

Document.doctype (en-US) Read only

回傳目前文件的 Document Type Definition(DTD)。

Document.documentElement Read only

回傳當前文件 Document 的根元素。以 HTML documents 為例:它會回傳 <html> (en-US) 這項元素。

Document.documentURI (en-US) Read only

Returns the document location as a string.

Document.domConfig (en-US) 已棄用

Should return a DOMConfiguration object.

Document.fullscreen (en-US) 已棄用

true when the document is in full-screen mode.

Document.hidden (en-US) Read only

Document.implementation (en-US) Read only

Returns the DOM implementation associated with the current document.

Document.inputEncoding (en-US) Read only 已棄用

Alias of Document.characterSet (en-US). Use this property instead.

Document.lastStyleSheetSet (en-US) Read only

Returns the name of the style sheet set that was last enabled. Has the value null until the style sheet is changed by setting the value of selectedStyleSheetSet (en-US).

Document.mozSyntheticDocument (en-US) 非標準

Returns a Boolean that is true only if this document is synthetic, such as a standalone image, video, audio file, or the like.

Document.mozFullScreenElement (en-US) Read only 非標準

The element that's currently in full screen mode for this document.

Document.mozFullScreenEnabled (en-US) Read only 非標準

true if calling Element.mozRequestFullscreen() (en-US) would succeed in the curent document.

Document.pointerLockElement (en-US) Read only 實驗性質

Returns the element set as the target for mouse events while the pointer is locked. null if lock is pending, pointer is unlocked, or if the target is in another document.

Document.preferredStyleSheetSet (en-US) Read only

Returns the preferred style sheet set as specified by the page author.

Document.scrollingElement (en-US) 實驗性質 Read only

Returns a reference to the Element that scrolls the document.

Document.selectedStyleSheetSet (en-US)

Returns which style sheet set is currently in use.

Document.styleSheets (en-US) Read only

Returns a list of the style sheet objects on the current document.

Document.styleSheetSets (en-US) Read only

Returns a list of the style sheet sets available on the document.

Document.timeline (en-US) Read only

Document.undoManager Read only 實驗性質

Document.visibilityState (en-US) Read only

Returns a string denoting the visibility state of the document. Possible values are visible, hidden, prerender, and unloaded.

Document.xmlEncoding (en-US) 已棄用

Returns the encoding as determined by the XML declaration.

Document.xmlStandalone 已棄用

Returns true if the XML declaration specifies the document to be standalone (e.g., An external part of the DTD affects the document's content), else false.

Document.xmlVersion (en-US) 已棄用

Returns the version number as specified in the XML declaration or "1.0" if the declaration is absent.

HTML 文件擴充

window.document 物件的部分屬性繼承自 HTML 文件的 HTMLDocument 介面,或是來自 Document 從 HTML5 之後擴充的屬性。

Document.activeElement (en-US) Read only

Returns the currently focused element.

Document.alinkColor (en-US) 已棄用

Returns or sets the color of active links in the document body.

Document.anchors (en-US)

Returns a list of all of the anchors in the document.

Document.applets (en-US) 已棄用

Returns an ordered list of the applets within a document.

Document.bgColor (en-US) 已棄用

Gets/sets the background color of the current document.

Document.body

Returns the <body> (en-US) element of the current document.

Document.cookie (en-US)

Returns a semicolon-separated list of the cookies for that document or sets a single cookie.

Document.defaultView Read only

Returns a reference to the window object.

Document.designMode

Gets/sets the ability to edit the whole document.

Document.dir (en-US) Read only

Gets/sets directionality (rtl/ltr) of the document.

Document.domain (en-US) Read only

Returns the domain of the current document.

Document.embeds (en-US) Read only

Returns a list of the embedded <embed> (en-US) elements within the current document.

document.fgColor (en-US) 已棄用

Gets/sets the foreground color, or text color, of the current document.

Document.forms Read only

Returns a list of the <form> elements within the current document.

Document.head Read only

Returns the <head> (en-US) element of the current document.

Document.height (en-US) 非標準 已棄用

Gets/sets the height of the current document.

Document.images (en-US) Read only

Returns a list of the images in the current document.

Document.lastModified (en-US) Read only

Returns the date on which the document was last modified.

Document.linkColor (en-US) 已棄用

Gets/sets the color of hyperlinks in the document.

Returns a list of all the hyperlinks in the document.

Document.location (en-US) Read only

Returns the URI of the current document.

Document.plugins (en-US) Read only

Returns a list of the available plugins.

Document.readyState Read only

Returns loading status of the document.

Document.referrer (en-US) Read only

Returns the URI of the page that linked to this page.

Document.scripts (en-US) Read only

Returns all the <script> elements on the document.

Document.title (en-US)

Sets or gets title of the current document.

Document.URL (en-US) Read only

Returns the document location as a string.

Document.vlinkColor (en-US) 已棄用

Gets/sets the color of visited hyperlinks.

Document.width 非標準 已棄用

Returns the width of the current document.

事件處理器

Document.onafterscriptexecute (en-US) 非標準

Represents the event handling code for the afterscriptexecute (en-US) event.

Document.onbeforescriptexecute (en-US) 非標準

Represents the event handling code for the beforescriptexecute (en-US) event.

Document.oncopy 非標準

Represents the event handling code for the copy (en-US) event.

Document.oncut 非標準

Represents the event handling code for the cut (en-US) event.

Document.onfullscreenchange (en-US)

Is an event handler representing the code to be called when the fullscreenchange (en-US) event is raised.

Document.onfullscreenerror (en-US)

Is an event handler representing the code to be called when the fullscreenerror (en-US) event is raised.

Document.onpaste 非標準

Represents the event handling code for the paste (en-US) event.

Document.onpointerlockchange 實驗性質

Represents the event handling code for the pointerlockchange (en-US) event.

Document.onpointerlockerror 實驗性質

Represetnts the event handling code for the pointerlockerror (en-US) event.

Document.onreadystatechange

Represents the event handling code for the readystatechange (en-US) event.

Document.onselectionchange (en-US) 實驗性質

Is an event handler representing the code to be called when the selectionchange (en-US) event is raised.

Document.onwheel 非標準

Represents the event handling code for the wheel (en-US) event.

方法

This interface also inherits from the Node and EventTarget interfaces.

Document.adoptNode() (en-US)

Adopt node from an external document.

Document.captureEvents() 已棄用

See Window.captureEvents (en-US).

Document.caretPositionFromPoint() (en-US) 實驗性質

Gets the CaretPosition (en-US) at or near the specified coordinates.

Document.caretRangeFromPoint() (en-US) 非標準

Gets a Range object for the document fragment under the specified coordinates.

Document.createAttribute() (en-US)

Creates a new Attr (en-US) object and returns it.

Document.createAttributeNS() (en-US)

Creates a new attribute node in a given namespace and returns it.

Document.createCDATASection() (en-US)

Creates a new CDATA node and returns it.

Document.createComment() (en-US)

Creates a new comment node and returns it.

Document.createDocumentFragment()

Creates a new document fragment.

Document.createElement()

Creates a new element with the given tag name.

Document.createElementNS() (en-US)

Creates a new element with the given tag name and namespace URI.

Document.createEntityReference() (en-US) 已棄用

Creates a new entity reference object and returns it.

Document.createEvent()

Creates an event object.

Document.createNodeIterator() (en-US)

Creates a NodeIterator (en-US) object.

Document.createProcessingInstruction() (en-US)

Creates a new ProcessingInstruction (en-US) object.

Document.createRange()

Creates a Range object.

Document.createTextNode()

Creates a text node.

Document.createTouch() (en-US)

Creates a Touch object.

Document.createTouchList() (en-US)

Creates a TouchList object.

Document.createTreeWalker()

Creates a TreeWalker (en-US) object.

Document.elementFromPoint() (en-US) 實驗性質

Returns the topmost element at the specified coordinates.

Document.elementsFromPoint() (en-US) 實驗性質

Returns an array of all elements at the specified coordinates.

Document.enableStyleSheetsForSet() (en-US)

Enables the style sheets for the specified style sheet set.

Document.exitPointerLock() (en-US) 實驗性質

Release the pointer lock.

Document.getAnimations() (en-US) 實驗性質

Returns an array of all Animation (en-US) objects currently in effect, whose target elements are descendants of the document.

Document.getElementsByClassName()

Returns a list of elements with the given class name.

Document.getElementsByTagName() (en-US)

Returns a list of elements with the given tag name.

Document.getElementsByTagNameNS() (en-US)

Returns a list of elements with the given tag name and namespace.

Document.importNode() (en-US)

Returns a clone of a node from an external document.

Document.normalizeDocument() 已棄用

Replaces entities, normalizes text nodes, etc.

Document.registerElement() 實驗性質

Registers a web component.

Document.releaseCapture() (en-US) 非標準

Releases the current mouse capture if it's on an element in this document.

Document.releaseEvents() 非標準 已棄用

See Window.releaseEvents() (en-US).

Document.routeEvent() 非標準 已棄用

See Window.routeEvent().

Document.mozSetImageElement() (en-US) 非標準

Allows you to change the element being used as the background image for a specified element ID.

The Document interface is extended with the ParentNode interface:

document.getElementById(String id) (en-US)

Returns an object reference to the identified element.

document.querySelector(String selector)

Returns the first Element node within the document, in document order, that matches the specified selectors.

document.querySelectorAll(String selector) (en-US)

Returns a list of all the Element nodes within the document that match the specified selectors.

The Document interface is extended with the XPathEvaluator (en-US) interface:

document.createExpression(String expression, XPathNSResolver resolver) (en-US)

Compiles an XPathExpression (en-US) which can then be used for (repeated) evaluations.

document.createNSResolver(Node resolver) (en-US)

Creates an XPathNSResolver (en-US) object.

document.evaluate(String expression, Node contextNode, XPathNSResolver resolver, Number type, Object result) (en-US)

Evaluates an XPath expression.

HTML 文件擴充

Document 物件的部分方法繼承自 HTML 文件的 HTMLDocument 介面,或是來自 Document 從 HTML5 之後擴充的方法:

document.clear() (en-US) 非標準 已棄用

In majority of modern browsers, including recent versions of Firefox and Internet Explorer, this method does nothing.

document.close() (en-US)

Closes a document stream for writing.

document.execCommand(String command[, Boolean showUI[, String value]])

On an editable document, executes a formating command.

document.getElementsByName(String name) (en-US)

Returns a list of elements with the given name.

document.getSelection() (en-US)

Returns a Selection (en-US) object related to text selected in the document.

document.hasFocus() (en-US)

Returns true if the focus is currently located anywhere inside the specified document.

document.open() (en-US)

Opens a document stream for writing.

document.queryCommandEnabled(String command) (en-US)

Returns true if the formating command can be executed on the current range.

document.queryCommandIndeterm(String command)

Returns true if the formating command is in an indeterminate state on the current range.

document.queryCommandState(String command) (en-US)

Returns true if the formating command has been executed on the current range.

document.queryCommandSupported(String command) (en-US)

Returns true if the formating command is supported on the current range.

document.queryCommandValue(String command)

Returns the current value of the current range for a formating command.

document.write(String text) (en-US)

Writes text in a document.

document.writeln(String text) (en-US)

Writes a line of text in a document.

規範

Specification
DOM Standard
# interface-document
HTML Standard
# the-document-object
CSSOM View Module
# extensions-to-the-document-interface
Pointer Lock 2.0
# extensions-to-the-document-interface
Selection API
# extensions-to-document-interface

瀏覽器相容性備註

Firefox notes

Mozilla defines a set of non-standard properties made only for XUL content:

document.currentScript (en-US) 非標準

Returns the <script> element that is currently executing.

document.documentURIObject

(Mozilla add-ons only!) Returns the nsIURI object representing the URI of the document. This property only has special meaning in privileged JavaScript code (with UniversalXPConnect privileges).

document.popupNode

Returns the node upon which a popup was invoked.

document.tooltipNode

Returns the node which is the target of the current tooltip.

Mozilla also define some non-standard methods:

document.execCommandShowHelp 已棄用

This method never did anything and always threw an exception, so it was removed in Gecko 14.0.

document.getBoxObjectFor (en-US) 已棄用

Use the Element.getBoundingClientRect() (en-US) method instead.

document.loadOverlay

Loads a XUL overlay dynamically. This only works in XUL documents.

document.queryCommandText 已棄用

This method never did anything but throw an exception, and was removed in Gecko 14.0.

Internet Explorer notes

Microsoft defines some non-standard properties:

document.fileSize 非標準 已棄用

Returns size in bytes of the document. Starting with Internet Explorer 11, that property is no longer supported. See MSDN. Internet Explorer does not support all methods from the Node interface in the Document interface:

document.contains

As a work-around, document.body.contains() can be used.