The WebPlatform project has been discontinued when the Stewards partnership agreement ended in September 2015. This site has been frozen, and the assets we have created will remain.


< dom
Jump to: navigation, search


This article is In Progress.

W3C Recommendation


The interface for the primary data type for the entire Document Object Model.

Inherits from EventTarget


The Node interface is the primary datatype for the entire Document Object Model (DOM). It represents a single node in the document tree.


API Name Summary
childNodes Gets a collection of direct Node descendants of the Node, including Element, Text and any other type of nodes.
firstChild Gets a reference to the first child node in the childNodes collection of the object.

If the node is childless, null is returned.

lastChild Gets a reference to the last child in the childNodes collection of an object.
localName Retrieves the local name of the fully qualified XML declaration for a node.
namespaceURI Retrieves the namespace URI of the fully qualified XML declaration for a node.
nextSibling Retrieves the next child node of the parent of the node.
nodeName Gets the name of a particular type of node.
nodeType Retrieves the type of the requested node.
ownerDocument Retrieves the document object associated with the node.
parentNode Retrieves the parent node in the document hierarchy.
prefix Sets or retrieves the prefix of the fully qualified XML declaration for a node.
previousSibling Retrieves the previous child node of the parent of the node.


API Name Summary
cloneNode Copies a reference to the object from the document hierarchy.
compareDocumentPosition Compares the position of two nodes in a document.
empty Cancels the current selection, sets the selection type to none, and sets the item property to null.
hasAttributes Returns whether this node (if it is an element) has any attributes
hasChildNodes Gets a value that indicates whether the Node has any direct Node descendant of any type.
insertBefore Inserts a child into the node, immediately before the specified reference child node.
isDefaultNamespace Indicates whether or not a namespace is the default namespace for a document.
isEqualNode Determines whether two nodes are equal in their type, name and namespace.
isSameNode Determines if two nodes are the same node.
isSupported Returns a value indicating whether or not the object supports a specific DOM standard.
lookupNamespaceURI Gets the URI of the namespace associated with a namespace prefix, if any.
normalize Merges adjacent DOM objects to produce a normalized document object model.
replaceChild Replaces an existing child node with a new child node.


No events.

Inherited from EventTarget


No properties.


API Name Summary
addEventListener Registers an event handler for the specified event type.
dispatchEvent Sends an event to the current element.
removeEventListener Removes an event handler that the addEventListener method registered.


No events.


While all objects implementing the Node interface expose methods for dealing with children, not all objects implementing the Node interface may have children. For example, text nodes may not have children, and adding children to such nodes results in a DOMException. The attributes nodeName, nodeValue and attributes are included as a mechanism to get at node information without casting down to the specific derived interface. In cases where there is no obvious mapping of these attributes for a specific nodeType (i.e., nodeValue for an Element or attributes for a Comment), this returns null. Note that the specialized interfaces may contain additional and more convenient mechanisms to get and set the relevant information.

Related specifications

Specification Status Related Changes
DOM Level 3 Core Recommendation Section 1.4


This article contains content originally from external sources.

Portions of this content come from the Mozilla Developer Network cc-by-sa-small-wpd.svg: [Node Article]

Portions of this content come from the Microsoft Developer Network: [Basic DOM Reference Article]