Skip to main content

ParentNode

The DOM Node interface is an abstract base class upon which many other DOM API objects are based, thus letting those object types be used similarly and often interchangeably. As an abstract class, there is no such thing as a plain Node object. All objects that implement Node functionality are based on one of its subclasses. Most notable are Document, Element, and DocumentFragment.

MDN Reference

Extends

Extended by

Methods

addEventListener()

addEventListener(
type,
callback,
options?
): void;

The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.

MDN Reference

Parameters

ParameterType
typestring
callback| EventListenerOrEventListenerObject | null
options?boolean | AddEventListenerOptions

Returns

void

Inherited from

Node.addEventListener


append()

append(...nodes): void;

Inserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.

Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

MDN Reference

Parameters

ParameterType
...nodes(string | Node)[]

Returns

void


appendChild()

appendChild<T>(node): T;

The appendChild() method of the Node interface adds a node to the end of the list of children of a specified parent node.

MDN Reference

Type Parameters

Type Parameter
T extends Node

Parameters

ParameterType
nodeT

Returns

T

Inherited from

Node.appendChild


cloneNode()

cloneNode(subtree?): Node;

The cloneNode() method of the Node interface returns a duplicate of the node on which this method was called. Its parameter controls if the subtree contained in the node is also cloned or not.

MDN Reference

Parameters

ParameterType
subtree?boolean

Returns

Node

Inherited from

Node.cloneNode


compareDocumentPosition()

compareDocumentPosition(other): number;

The compareDocumentPosition() method of the Node interface reports the position of its argument node relative to the node on which it is called.

MDN Reference

Parameters

ParameterType
otherNode

Returns

number

Inherited from

Node.compareDocumentPosition


contains()

contains(other): boolean;

The contains() method of the Node interface returns a boolean value indicating whether a node is a descendant of a given node, that is the node itself, one of its direct children (childNodes), one of the children's direct children, and so on.

MDN Reference

Parameters

ParameterType
otherNode | null

Returns

boolean

Inherited from

Node.contains


dispatchEvent()

dispatchEvent(event): boolean;

The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually with dispatchEvent().

MDN Reference

Parameters

ParameterType
eventEvent

Returns

boolean

Inherited from

Node.dispatchEvent


getRootNode()

getRootNode(options?): Node;

The getRootNode() method of the Node interface returns the context object's root, which optionally includes the shadow root if it is available.

MDN Reference

Parameters

ParameterType
options?GetRootNodeOptions

Returns

Node

Inherited from

Node.getRootNode


hasChildNodes()

hasChildNodes(): boolean;

The hasChildNodes() method of the Node interface returns a boolean value indicating whether the given Node has child nodes or not.

MDN Reference

Returns

boolean

Inherited from

Node.hasChildNodes


insertBefore()

insertBefore<T>(node, child): T;

The insertBefore() method of the Node interface inserts a node before a reference node as a child of a specified parent node.

MDN Reference

Type Parameters

Type Parameter
T extends Node

Parameters

ParameterType
nodeT
childNode | null

Returns

T

Inherited from

Node.insertBefore


isDefaultNamespace()

isDefaultNamespace(namespace): boolean;

The isDefaultNamespace() method of the Node interface accepts a namespace URI as an argument. It returns a boolean value that is true if the namespace is the default namespace on the given node and false if not. The default namespace can be retrieved with Node.lookupNamespaceURI() by passing null as the argument.

MDN Reference

Parameters

ParameterType
namespacestring | null

Returns

boolean

Inherited from

Node.isDefaultNamespace


isEqualNode()

isEqualNode(otherNode): boolean;

The isEqualNode() method of the Node interface tests whether two nodes are equal. Two nodes are equal when they have the same type, defining characteristics (for elements, this would be their ID, number of children, and so forth), its attributes match, and so on. The specific set of data points that must match varies depending on the types of the nodes.

MDN Reference

Parameters

ParameterType
otherNodeNode | null

Returns

boolean

Inherited from

Node.isEqualNode


isSameNode()

isSameNode(otherNode): boolean;

The isSameNode() method of the Node interface is a legacy alias the for the === strict equality operator. That is, it tests whether two nodes are the same (in other words, whether they reference the same object).

MDN Reference

Parameters

ParameterType
otherNodeNode | null

Returns

boolean

Inherited from

Node.isSameNode


lookupNamespaceURI()

lookupNamespaceURI(prefix): string | null;

The lookupNamespaceURI() method of the Node interface takes a prefix as parameter and returns the namespace URI associated with it on the given node if found (and null if not). This method's existence allows Node objects to be passed as a namespace resolver to XPathEvaluator.createExpression() and XPathEvaluator.evaluate().

MDN Reference

Parameters

ParameterType
prefixstring | null

Returns

string | null

Inherited from

Node.lookupNamespaceURI


lookupPrefix()

lookupPrefix(namespace): string | null;

The lookupPrefix() method of the Node interface returns a string containing the prefix for a given namespace URI, if present, and null if not. When multiple prefixes are possible, the first prefix is returned.

MDN Reference

Parameters

ParameterType
namespacestring | null

Returns

string | null

Inherited from

Node.lookupPrefix


moveBefore()

moveBefore(node, child): void;

MDN Reference

Parameters

ParameterType
nodeNode
childNode | null

Returns

void


normalize()

normalize(): void;

The normalize() method of the Node interface puts the specified node and all of its sub-tree into a normalized form. In a normalized sub-tree, no text nodes in the sub-tree are empty and there are no adjacent text nodes.

MDN Reference

Returns

void

Inherited from

Node.normalize


prepend()

prepend(...nodes): void;

Inserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.

Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

MDN Reference

Parameters

ParameterType
...nodes(string | Node)[]

Returns

void


querySelector()

Call Signature

querySelector<K>(selectors): HTMLElementTagNameMap[K] | null;

Returns the first element that is a descendant of node that matches selectors.

MDN Reference

Type Parameters
Type Parameter
K extends keyof HTMLElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

HTMLElementTagNameMap[K] | null

Call Signature

querySelector<K>(selectors): SVGElementTagNameMap[K] | null;
Type Parameters
Type Parameter
K extends keyof SVGElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

SVGElementTagNameMap[K] | null

Call Signature

querySelector<K>(selectors): MathMLElementTagNameMap[K] | null;
Type Parameters
Type Parameter
K extends keyof MathMLElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

MathMLElementTagNameMap[K] | null

Call Signature

querySelector<K>(selectors):
| HTMLElementDeprecatedTagNameMap[K]
| null;
Type Parameters
Type Parameter
K extends keyof HTMLElementDeprecatedTagNameMap
Parameters
ParameterType
selectorsK
Returns

| HTMLElementDeprecatedTagNameMap[K] | null

Deprecated

Call Signature

querySelector<E>(selectors): E | null;
Type Parameters
Type ParameterDefault type
E extends ElementElement
Parameters
ParameterType
selectorsstring
Returns

E | null


querySelectorAll()

Call Signature

querySelectorAll<K>(selectors): NodeListOf<HTMLElementTagNameMap[K]>;

Returns all element descendants of node that match selectors.

MDN Reference

Type Parameters
Type Parameter
K extends keyof HTMLElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

NodeListOf<HTMLElementTagNameMap[K]>

Call Signature

querySelectorAll<K>(selectors): NodeListOf<SVGElementTagNameMap[K]>;
Type Parameters
Type Parameter
K extends keyof SVGElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

NodeListOf<SVGElementTagNameMap[K]>

Call Signature

querySelectorAll<K>(selectors): NodeListOf<MathMLElementTagNameMap[K]>;
Type Parameters
Type Parameter
K extends keyof MathMLElementTagNameMap
Parameters
ParameterType
selectorsK
Returns

NodeListOf<MathMLElementTagNameMap[K]>

Call Signature

querySelectorAll<K>(selectors): NodeListOf<HTMLElementDeprecatedTagNameMap[K]>;
Type Parameters
Type Parameter
K extends keyof HTMLElementDeprecatedTagNameMap
Parameters
ParameterType
selectorsK
Returns

NodeListOf<HTMLElementDeprecatedTagNameMap[K]>

Deprecated

Call Signature

querySelectorAll<E>(selectors): NodeListOf<E>;
Type Parameters
Type ParameterDefault type
E extends ElementElement
Parameters
ParameterType
selectorsstring
Returns

NodeListOf<E>


removeChild()

removeChild<T>(child): T;

The removeChild() method of the Node interface removes a child node from the DOM and returns the removed node.

MDN Reference

Type Parameters

Type Parameter
T extends Node

Parameters

ParameterType
childT

Returns

T

Inherited from

Node.removeChild


removeEventListener()

removeEventListener(
type,
callback,
options?
): void;

The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target. The event listener to be removed is identified using a combination of the event type, the event listener function itself, and various optional options that may affect the matching process; see Matching event listeners for removal.

MDN Reference

Parameters

ParameterType
typestring
callback| EventListenerOrEventListenerObject | null
options?boolean | EventListenerOptions

Returns

void

Inherited from

Node.removeEventListener


replaceChild()

replaceChild<T>(node, child): T;

The replaceChild() method of the Node interface replaces a child node within the given (parent) node.

MDN Reference

Type Parameters

Type Parameter
T extends Node

Parameters

ParameterType
nodeNode
childT

Returns

T

Inherited from

Node.replaceChild


replaceChildren()

replaceChildren(...nodes): void;

Replace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.

Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

MDN Reference

Parameters

ParameterType
...nodes(string | Node)[]

Returns

void

Properties

ATTRIBUTE_NODE

readonly ATTRIBUTE_NODE: 2;

Inherited from

Node.ATTRIBUTE_NODE


baseURI

readonly baseURI: string;

The read-only baseURI property of the Node interface returns the absolute base URL of the document containing the node.

MDN Reference

Inherited from

Node.baseURI


CDATA_SECTION_NODE

readonly CDATA_SECTION_NODE: 4;

node is a CDATASection node.

Inherited from

Node.CDATA_SECTION_NODE


childElementCount

readonly childElementCount: number;

MDN Reference


childNodes

readonly childNodes: NodeListOf<ChildNode>;

The read-only childNodes property of the Node interface returns a live NodeList of child nodes of the given element where the first child node is assigned index 0. Child nodes include elements, text and comments.

MDN Reference

Inherited from

Node.childNodes


children

readonly children: HTMLCollection;

Returns the child elements.

MDN Reference


COMMENT_NODE

readonly COMMENT_NODE: 8;

node is a Comment node.

Inherited from

Node.COMMENT_NODE


DOCUMENT_FRAGMENT_NODE

readonly DOCUMENT_FRAGMENT_NODE: 11;

node is a DocumentFragment node.

Inherited from

Node.DOCUMENT_FRAGMENT_NODE


DOCUMENT_NODE

readonly DOCUMENT_NODE: 9;

node is a document.

Inherited from

Node.DOCUMENT_NODE


DOCUMENT_POSITION_CONTAINED_BY

readonly DOCUMENT_POSITION_CONTAINED_BY: 16;

Set when other is a descendant of node.

Inherited from

Node.DOCUMENT_POSITION_CONTAINED_BY


DOCUMENT_POSITION_CONTAINS

readonly DOCUMENT_POSITION_CONTAINS: 8;

Set when other is an ancestor of node.

Inherited from

Node.DOCUMENT_POSITION_CONTAINS


DOCUMENT_POSITION_DISCONNECTED

readonly DOCUMENT_POSITION_DISCONNECTED: 1;

Set when node and other are not in the same tree.

Inherited from

Node.DOCUMENT_POSITION_DISCONNECTED


DOCUMENT_POSITION_FOLLOWING

readonly DOCUMENT_POSITION_FOLLOWING: 4;

Set when other is following node.

Inherited from

Node.DOCUMENT_POSITION_FOLLOWING


DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC

readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32;

Inherited from

Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC


DOCUMENT_POSITION_PRECEDING

readonly DOCUMENT_POSITION_PRECEDING: 2;

Set when other is preceding node.

Inherited from

Node.DOCUMENT_POSITION_PRECEDING


DOCUMENT_TYPE_NODE

readonly DOCUMENT_TYPE_NODE: 10;

node is a doctype.

Inherited from

Node.DOCUMENT_TYPE_NODE


ELEMENT_NODE

readonly ELEMENT_NODE: 1;

node is an element.

Inherited from

Node.ELEMENT_NODE


ENTITY_NODE

readonly ENTITY_NODE: 6;

Inherited from

Node.ENTITY_NODE


ENTITY_REFERENCE_NODE

readonly ENTITY_REFERENCE_NODE: 5;

Inherited from

Node.ENTITY_REFERENCE_NODE


firstChild

readonly firstChild: ChildNode | null;

The read-only firstChild property of the Node interface returns the node's first child in the tree, or null if the node has no children.

MDN Reference

Inherited from

Node.firstChild


firstElementChild

readonly firstElementChild: Element | null;

Returns the first child that is an element, and null otherwise.

MDN Reference


isConnected

readonly isConnected: boolean;

The read-only isConnected property of the Node interface returns a boolean indicating whether the node is connected (directly or indirectly) to a Document object.

MDN Reference

Inherited from

Node.isConnected


lastChild

readonly lastChild: ChildNode | null;

The read-only lastChild property of the Node interface returns the last child of the node, or null if there are no child nodes.

MDN Reference

Inherited from

Node.lastChild


lastElementChild

readonly lastElementChild: Element | null;

Returns the last child that is an element, and null otherwise.

MDN Reference


nextSibling

readonly nextSibling: ChildNode | null;

The read-only nextSibling property of the Node interface returns the node immediately following the specified one in their parent's childNodes, or returns null if the specified node is the last child in the parent element.

MDN Reference

Inherited from

Node.nextSibling


nodeName

readonly nodeName: string;

The read-only nodeName property of Node returns the name of the current node as a string.

MDN Reference

Inherited from

Node.nodeName


nodeType

readonly nodeType: number;

The read-only nodeType property of a Node interface is an integer that identifies what the node is. It distinguishes different kinds of nodes from each other, such as elements, text, and comments.

MDN Reference

Inherited from

Node.nodeType


nodeValue

nodeValue: string | null;

The nodeValue property of the Node interface returns or sets the value of the current node.

MDN Reference

Inherited from

Node.nodeValue


NOTATION_NODE

readonly NOTATION_NODE: 12;

Inherited from

Node.NOTATION_NODE


ownerDocument

readonly ownerDocument: Document | null;

The read-only ownerDocument property of the Node interface returns the top-level document object of the node.

MDN Reference

Inherited from

Node.ownerDocument


parentElement

readonly parentElement: HTMLElement | null;

The read-only parentElement property of Node interface returns the DOM node's parent Element, or null if the node either has no parent, or its parent isn't a DOM Element. Node.parentNode on the other hand returns any kind of parent, regardless of its type.

MDN Reference

Inherited from

Node.parentElement


parentNode

readonly parentNode: ParentNode | null;

The read-only parentNode property of the Node interface returns the parent of the specified node in the DOM tree.

MDN Reference

Inherited from

Node.parentNode


previousSibling

readonly previousSibling: ChildNode | null;

The read-only previousSibling property of the Node interface returns the node immediately preceding the specified one in its parent's childNodes list, or null if the specified node is the first in that list.

MDN Reference

Inherited from

Node.previousSibling


PROCESSING_INSTRUCTION_NODE

readonly PROCESSING_INSTRUCTION_NODE: 7;

node is a ProcessingInstruction node.

Inherited from

Node.PROCESSING_INSTRUCTION_NODE


TEXT_NODE

readonly TEXT_NODE: 3;

node is a Text node.

Inherited from

Node.TEXT_NODE


textContent

textContent: string | null;

The textContent property of the Node interface represents the text content of the node and its descendants.

MDN Reference

Inherited from

Node.textContent