Node Class

The Node interface is the primary datatype for the entire Document Object Model. It represents a single node in the document tree. 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 being raised.

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 (e.g., 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.

Inheritance Hierarchy
SystemObject
  Aspose.Html.DomDOMObject
    Aspose.Html.DomEventTarget
      Aspose.Html.DomNode
        More...

Namespace: Aspose.Html.Dom
Assembly: Aspose.HTML (in Aspose.HTML.dll) Version: 21.11
Syntax
public abstract class Node : EventTarget, 
	IXPathNSResolver

The Node type exposes the following members.

Constructors
  NameDescription
Protected methodNode

Initializes a new instance of the node.

Properties
  NameDescription
Public propertyAttributes

The attributes property returns a live collection of all attribute nodes registered to the specified node. Attributes is a key/value pair of strings that represents any information regarding that attribute.

Public propertyBaseURI

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

The base URL is used to resolve relative URLs when the browser needs to obtain an absolute URL, for example when processing the HTML img element's src attribute or the xlink:href or href attributes in SVG.

Public propertyChildNodes

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.

Note: The NodeList being live means that its content is changed each time new children are added or removed.
Public propertyFirstChild

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.

If the node is a Document, this property returns the first node in the list of its direct children.

Public propertyLastChild

The read-only lastChild property of the Node interface returns the last child of the node. If its parent is an element, then the child is generally an element node, a text node, or a comment node. It returns null if there are no child elements

Public propertyLocalName

Returns the local part of the qualified name of this node. For nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE and nodes created with a DOM Level 1 method, such as Document.createElement(), this is always null.

Public propertyNamespaceURI

The Element.namespaceURI read-only property returns the namespace URI of the element, or null if the element is not in a namespace.

Public propertyNextSibling

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.

Public propertyNodeName

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

Public propertyNodeType
A code representing the type of the underlying object.
Public propertyNodeValue

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

Public propertyOwnerDocument

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

Public propertyParentElement

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.

Public propertyParentNode

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

Document and DocumentFragment nodes can never have a parent, so parentNode will always return null. It also returns null if the node has just been created and is not yet attached to the tree.

Public propertyPrefix

The prefix read-only property returns the namespace prefix of the specified element, or null if no prefix is specified.

Public propertyPreviousSibling

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.

Public propertyTextContent

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

Methods
  NameDescription
Public methodAddEventListener(String, IEventListener)

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

It works by adding a function, or an object that implements EventListener, to the list of event listeners for the specified event type on the EventTarget on which it's called. If the function or object, is already in the list of event listeners for this target, they are not added a second time.

(Inherited from EventTarget.)
Public methodAddEventListener(String, DOMEventHandler, Boolean)

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

It works by adding a function, or an object that implements EventListener, to the list of event listeners for the specified event type on the EventTarget on which it's called. If the function or object, is already in the list of event listeners for this target, they are not added a second time.

(Inherited from EventTarget.)
Public methodAddEventListener(String, IEventListener, Boolean)

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

It works by adding a function, or an object that implements EventListener, to the list of event listeners for the specified event type on the EventTarget on which it's called. If the function or object, is already in the list of event listeners for this target, they are not added a second time.

(Inherited from EventTarget.)
Public methodAppendChild

The appendChild() method of the Node interface adds a node to the end of the list of children of a specified parent node. If the given child is a reference to an existing node in the document, appendChild() moves it from its current position to the new position (there is no requirement to remove the node from its parent node before appending it to some other node).

This means that a node can't be in two points of the document simultaneously. So if the node already has a parent, the node is first removed, then appended at the new position. The Node.cloneNode() method can be used to make a copy of the node before appending it under the new parent. Copies made with cloneNode are not be automatically kept in sync.

Public methodCloneNode

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 a node is also cloned or not.

Cloning a node copies all of its attributes and their values, including intrinsic (inline) listeners. It does not copy event listeners added using addEventListener() or those assigned to element properties (e.g., node.onclick = someFunction). Additionally, for a <canvas> element, the painted image is not copied.

Public methodCloneNode(Boolean)

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 a node is also cloned or not.

Cloning a node copies all of its attributes and their values, including intrinsic (inline) listeners. It does not copy event listeners added using addEventListener() or those assigned to element properties (e.g., node.onclick = someFunction). Additionally, for a <canvas> element, the painted image is not copied.

Public methodDispatchEvent

Dispatches an Event at the specified EventTarget, (synchronously) invoking the affected EventListeners in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually with dispatchEvent().

(Inherited from EventTarget.)
Public methodDispose
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
(Inherited from EventTarget.)
Protected methodDispose(Boolean)
Releases unmanaged and - optionally - managed resources.
(Overrides EventTargetDispose(Boolean).)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Finalizes an instance of the Node class.
(Overrides ObjectFinalize.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetPlatformType

This method is used to retrieve the ECMAScript object .

(Inherited from DOMObject.)
Public methodGetType
Gets the type of the current instance.
(Inherited from Object.)
Public methodHasAttributes

The hasAttributes() method of the Element interface returns a boolean value indicating whether the current element has any attributes or not.

Public methodHasChildNodes

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

Public methodInsertBefore

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

If the given node already exists in the document, insertBefore() moves it from its current position to the new position. (That is, it will automatically be removed from its existing parent before appending it to the specified new parent.)

This means that a node cannot be in two locations of the document simultaneously.

Public methodIsDefaultNamespace

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.

Note: The default namespace of an HTML element is always "". For a SVG element, it is set by the xmlns attribute.
Public methodIsEqualNode

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.

Public methodIsSameNode

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).

Note: There is no need to use isSameNode(); instead use the === strict equality operator.
Public methodLookupNamespaceURI

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).

Public methodLookupPrefix

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.

Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodNormalize

Puts all Text nodes in the full depth of the sub-tree underneath this Node, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes. This can be used to ensure that the DOM view of a document is the same as if it were saved and re-loaded, and is useful when operations (such as XPointer [XPointer] lookups) that depend on a particular document tree structure are to be used. If the parameter "normalize-characters" of the DOMConfiguration object attached to the Node.ownerDocument is true, this method will also fully normalize the characters of the Text nodes.

Public methodRemoveChild

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

Note: As long as a reference is kept on the removed child, it still exists in memory, but is no longer part of the DOM. It can still be reused later in the code. If the return value of removeChild() is not stored, and no other reference is kept, it will be automatically deleted from memory after a short time.
Public methodRemoveEventListener(String, IEventListener)

This method allows the removal of event listeners from the event target. If an is removed from an while it is processing an event, it will not be triggered by the current actions. Event Listeners can never be invoked after being removed.

(Inherited from EventTarget.)
Public methodRemoveEventListener(String, DOMEventHandler, Boolean)

This method allows the removal of event listeners from the event target. If an is removed from an while it is processing an event, it will not be triggered by the current actions. Event Listeners can never be invoked after being removed.

(Inherited from EventTarget.)
Public methodRemoveEventListener(String, IEventListener, Boolean)

This method allows the removal of event listeners from the event target. If an is removed from an while it is processing an event, it will not be triggered by the current actions. Event Listeners can never be invoked after being removed.

(Inherited from EventTarget.)
Public methodReplaceChild

Replaces the child node oldChild with newChild in the list of children, and returns the oldChild node. If newChild is a DocumentFragment object, oldChild is replaced by all of the DocumentFragment children, which are inserted in the same order. If the newChild is already in the tree, it is first removed.

Public methodToString
Returns a String that represents this instance.
(Overrides ObjectToString.)
Fields
  NameDescription
Public fieldStatic memberATTRIBUTE_NODE

An Attribute of an Element.

Public fieldStatic memberCDATA_SECTION_NODE

A CDATASection, such as <!CDATA[[ … ]]>.

Public fieldStatic memberCOMMENT_NODE

A Comment node, such as <!-- … -->.

Public fieldStatic memberDOCUMENT_FRAGMENT_NODE
Public fieldStatic memberDOCUMENT_NODE

A Document node.

Public fieldStatic memberDOCUMENT_TYPE_NODE

A DocumentType node, such as <!DOCTYPE html>.

Public fieldStatic memberELEMENT_NODE

An Element node like <p> or <div>.

Public fieldStatic memberENTITY_NODE

An Entity node.

Public fieldStatic memberENTITY_REFERENCE_NODE
Public fieldStatic memberNOTATION_NODE

A Notation node

Public fieldStatic memberPROCESSING_INSTRUCTION_NODE

A ProcessingInstruction of an XML document, such as <?xml-stylesheet … ?>.

Public fieldStatic memberTEXT_NODE

The actual Text inside an Element or Attr.

Remarks

Reference:

See Also
Inheritance Hierarchy