MDN may have intermittent access issues April 18 13:00 - April 19 01:00 UTC. See whistlepig.mozilla.org for all notifications.

mozilla
Your Search Results

    Document

     

    Summary

    Each web page loaded in the browser has its own document object. The Document interface serves as an entry point into the web page's content (the DOM tree, including elements such as <body> and <table>) and provides functionality which is global to the document (such as obtaining the page's URL and creating new elements in the document).

    A document object can be obtained from various APIs:

    Depending on the kind of the document (e.g. HTML or XML), different APIs may be available on the document object.

    • All document objects implement the Document interface (and hence the Node and EventTarget interfaces). Thus, the "core" properties and methods documented on this page are available for all kinds of documents.
    • In contemporary browsers, some documents (e.g. those served with the text/html content type) also implement the HTMLDocument interface.
    • In contemporary browsers, SVG documents implement the SVGDocument interface.

    In the future, all those interfaces will be collapsed into the Document interface.

    Properties

    Note: The Document interface also inherits from the Node and EventTarget interfaces.

    Document.all
    Provides access to all elements with an id. This is a legacy non-standard interface, you should use the Document.getElementById() method instead.
    Document.async
    Used with document.load to indicate an asynchronous request.
    Document.characterSet
    Returns the character set being used by the document.
    Document.compatMode
    Indicates whether the document is rendered in Quirks or Strict mode.
    Document.contentType
    Returns the Content-Type from the MIME Header of the current document.
    Document.doctype
    Returns the Document Type Definition (DTD) of the current document.
    Document.documentElement
    Returns the Element that is a direct child of the document. For HTML documents, this is normally the HTML element.
    Document.documentURI
    Returns the document location as a string.
    Document.domConfig
    Should return a DOMConfiguration object.
    Document.implementation
    Returns the DOM implementation associated with the current document.
    Document.inputEncoding
    Returns the encoding used when the document was parsed.
    Document.lastStyleSheetSet
    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.
    Document.mozSyntheticDocument
    true if this document is synthetic, such as a standalone image, video, audio file, or the like.
    Document.mozFullScreen
    true when the document is in full-screen mode.
    Document.mozFullScreenElement
    The element that's currently in full screen mode for this document.
    Document.mozFullScreenEnabled
    true if calling element.mozRequestFullscreen() would succeed in the curent document.
    Document.pointerLockElement
    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
    Returns the preferred style sheet set as specified by the page author.
    Document.scrollingElement Read only
    Returns a reference to the Element that scrolls the document.
    Document.selectedStyleSheetSet
    Returns which style sheet set is currently in use.
    Document.styleSheets
    Returns a list of the style sheet objects on the current document.
    Document.styleSheetSets
    Returns a list of the style sheet sets available on the document.
    Document.xmlEncoding
    Returns the encoding as determined by the XML declaration.
    Document.xmlStandalone Obsolete since Gecko 10.0
    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 Obsolete since Gecko 10.0
    Returns the version number as specified in the XML declaration or "1.0" if the declaration is absent.

    The Document interface is extended with the ParentNode interface:

    ParentNode.children Read only
    Returns a live HTMLCollection containing all objects of type Element that are children of this ParentNode.
    ParentNode.firstElementChild Read only
    Returns the Element that is the first child of this ParentNode, or null if there is none.
    ParentNode.lastElementChild Read only
    Returns the Element that is the last child of this ParentNode, or null if there is none.
    ParentNode.childElementCount Read only
    Returns an unsigned long giving the amount of children that the object has.

    Extension for HTML document

    The Document interface for HTML documents inherit from the HTMLDocument interface or, since HTML5,  is extended for such documents:

    Document.activeElement
    Returns the currently focused element.
    Document.alinkColor
    Returns or sets the color of active links in the document body.
    Document.anchors
    Returns a list of all of the anchors in the document.
    Document.applets
    Returns an ordered list of the applets within a document.
    Document.bgColor
    Gets/sets the background color of the current document.
    Document.body
    Returns the <body> element of the current document.
    Document.cookie
    Returns a semicolon-separated list of the cookies for that document or sets a single cookie.
    Document.defaultView
    Returns a reference to the window object.
    Document.designMode
    Gets/sets the ability to edit the whole document.
    Document.dir
    Gets/sets directionality (rtl/ltr) of the document.
    Document.domain
    Returns the domain of the current document.
    Document.embeds
    Returns a list of the embedded <embed> elements within the current document.
    Document.fgColor
    Gets/sets the foreground color, or text color, of the current document.
    Document.forms
    Returns a list of the <form> elements within the current document.
    Document.head
    Returns the <head> element of the current document.
    Document.height
    Gets/sets the height of the current document.
    Document.images
    Returns a list of the images in the current document.
    Document.lastModified
    Returns the date on which the document was last modified.
    Document.linkColor
    Gets/sets the color of hyperlinks in the document.
    Document.links
    Returns a list of all the hyperlinks in the document.
    Document.location
    Returns the URI of the current document.
    Document.plugins
    Returns a list of the available plugins.
    Document.readyState
    Returns loading status of the document.
    Document.referrer
    Returns the URI of the page that linked to this page.
    Document.scripts
    Returns all the <script> elements on the document.
    Document.title
    Returns the title of the current document.
    Document.URL Read only
    Returns the document location as a string.
    Document.vlinkColor
    Gets/sets the color of visited hyperlinks.
    Document.width
    Returns the width of the current document.

    Event handlers

    Document.onpointerlockchange
    Returns the event handling code for the pointerlockchange event.
    Document.onpointerlockerror
    Returns the event handling code for the pointerlockerror event.
    Document.onreadystatechange
    Returns the event handling code for the readystatechange event.

    Methods

    Note: The Document interface also inherits from the Node and EventTarget interfaces.

    Document.adoptNode(Node node)
    Adopt node from an external document.
    Document.captureEvents(String eventName)
    See window.captureEvents.
    Document.caretPositionFromPoint(Number x, Number y)
    Gets the CaretPosition at or near the specified coordinates.
    Document.caretRangeFromPoint(Number x, Number y)
    Gets a Range object for the document fragment under the specified coordinates.
    Document.createAttribute(String name)
    Creates a new Attr object and returns it.
    Document.createAttributeNS(String namespace, String name)
    Creates a new attribute node in a given namespace and returns it.
    Document.createCDATASection(String data)
    Creates a new CDATA node and returns it.
    Document.createComment(String comment)
    Creates a new comment node and returns it.
    Document.createDocumentFragment()
    Creates a new document fragment.
    Document.createElement(String name)
    Creates a new element with the given tag name.
    Document.createElementNS(String namespace, String name)
    Creates a new element with the given tag name and namespace URI.
    Document.createEntityReference(String name)
    Creates a new entity reference object and returns it.
    Document.createEvent(String interface)
    Creates an event object.
    Document.createNodeIterator(Node root[, Number whatToShow[, NodeFilter filter]])
    Creates a NodeIterator object.
    Document.createProcessingInstruction(String target, String data)
    Creates a new ProcessingInstruction object.
    Document.createRange()
    Creates a Range object.
    Document.createTextNode(String text)
    Creates a text node.
    Document.createTreeWalker(Node root[, Number whatToShow[, NodeFilter filter]])
    Creates a TreeWalker object.
    Document.elementFromPoint(Number x, Number y)
    Returns the topmost element at the specified coordinates. 
    Document.elementsFromPoint(Number x, Number y)
    Returns an array of all elements at the specified coordinates.
    Document.enableStyleSheetsForSet(String name)
    Enables the style sheets for the specified style sheet set.
    Document.exitPointerLock()
    Release the pointer lock.
    Document.getElementsByClassName(String className)
    Returns a list of elements with the given class name.
    Document.getElementsByTagName(String tagName)
    Returns a list of elements with the given tag name.
    Document.getElementsByTagNameNS(String namespace, String tagName)
    Returns a list of elements with the given tag name and namespace.
    Document.importNode(Node node, Boolean deep)
    Returns a clone of a node from an external document.
    Document.normalizeDocument()
    Replaces entities, normalizes text nodes, etc.
    Document.releaseCapture()
    Releases the current mouse capture if it's on an element in this document.
    Document.releaseEvents
    See window.releaseEvents.
    document.routeEvent Obsolete since Gecko 24
    See window.routeEvent.
    document.mozSetImageElement
    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)
    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)
    Returns a list of all the Element nodes within the document that match the specified selectors.

    The Document interface is extended with the XPathEvaluator interface:

    Document.createExpression(String expression, XPathNSResolver resolver)
    Compiles an XPathExpression which can then be used for (repeated) evaluations.
    Document.createNSResolver(Node resolver)
    Creates an XPathNSResolver object.
    Document.evaluate(String expression, Node contextNode, XPathNSResolver resolver, Number type, Object result)
    Evaluates an XPath expression.

    Extension for HTML documents

    The Document interface for HTML documents inherit from the HTMLDocument interface or, since HTML5,  is extended for such documents:

    Document.clear()
    In majority of modern browsers, including recent versions of Firefox and Internet Explorer, this method does nothing.
    Document.close()
    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)
    Returns a list of elements with the given name.
    Document.getSelection()
    Returns a Selection object related to text selected in the document.
    Document.hasFocus()
    Returns true if the focus is currently located anywhere inside the specified document.
    Document.open()
    Opens a document stream for writing.
    Document.queryCommandEnabled(String command)
    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)
    Returns true if the formating command has been executed on the current range.
    Document.queryCommandSupported(String command)
    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)
    Writes text in a document.
    Document.writeln(String text)
    Writes a line of text in a document.

    Specifications

    Specification Status Comment
    Document Object Model (DOM) Level 1 Specification
    The definition of 'Document' in that specification.
    Recommendation Initial definition for the interface
    Document Object Model (DOM) Level 2 Core Specification
    The definition of 'Document' in that specification.
    Recommendation Supersede DOM 1
    Document Object Model (DOM) Level 3 Core Specification
    The definition of 'Document' in that specification.
    Recommendation Supersede DOM 2
    DOM
    The definition of 'Document' in that specification.
    Living Standard Intend to supersede DOM 3
    WHATWG HTML Living Standard
    The definition of 'Document' in that specification.
    Living Standard Turn the HTMLDocument interface into a Document extension.
    Document Object Model (DOM) Level 3 XPath Specification
    The definition of 'XPathEvaluator' in that specification.
    Recommendation Define the XPathEvaluator interface which extend Document.
    HTML Editing APIs
    The definition of 'Document' in that specification.
    Editor's Draft Extend the Document interface
    CSS Object Model (CSSOM) View Module
    The definition of 'Document' in that specification.
    Working Draft Extend the Document interface
    CSS Object Model (CSSOM)
    The definition of 'Document' in that specification.
    Working Draft Extend the Document interface
    Pointer Lock
    The definition of 'Document' in that specification.
    Candidate Recommendation Extend the Document interface

    Browser compatibility

    Firefox notes

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

    document.currentScript
    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 Obsolete since Gecko 14.0
    This method never did anything and always threw an exception, so it was removed in Gecko 14.0 (Firefox 14.0 / Thunderbird 14.0 / SeaMonkey 2.11).
    Document.getBoxObjectFor
    Use the Element.getBoundingClientRect() method instead.
    Document.loadOverlay
    Loads a XUL overlay dynamically. This only works in XUL documents.
    document.queryCommandText Obsolete since Gecko 14.0
    This method never did anything but throw an exception, and was removed in Gecko 14.0 (Firefox 14.0 / Thunderbird 14.0 / SeaMonkey 2.11).

    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.

     

    Hide Sidebar