Add a new node (and its subtree, if applicable) to the end of the list of children of this node.
Add a new node (and its subtree, if applicable) to the end of the list of children of this node.
If the new child is already present in the DOM tree it is first removed (effectively moving it). If the new child is a DocumentFragment node then the entire contents of the document fragment are appended, but the fragment node itself is not (therefore using a document fragment is a good way of building and attaching several nodes at once).
The new node to be added to this node. If the new node has any children these are also added recursively, preserving the new node's sub-tree.
The node that was added
The attributes collection is an unordered list of all the effective attributes1 of an Element; for other nodes this property is null.
The attributes collection is an unordered list of all the effective attributes1 of an Element; for other nodes this property is null.
This collection is a NamedNodeMap, primarily intended to be accessed by name. It's also possible to access the items by their index in the map, however the DOM does not specify what order they will appear in (and this varies by browser, as noted in the Compatibility notes below).
As with all named node maps, attributes is a live collection, which means that changes to the collection it represents are immediately reflected in the node map (as opposed to it being a static snapshot). This collection is read-only.
The childNodes collection is an ordered list of all the direct child nodes of this node; if there are no child nodes then this collection is empty (it has zero length).
The childNodes collection is an ordered list of all the direct child nodes of this node; if there are no child nodes then this collection is empty (it has zero length). The childNodes collection is a NodeList, in which the items are indexed numerically, and appear in source order.
As with all node lists, childNodes is a live collection, which means that changes to the collection it represents are immediately reflected in the node list (as opposed to it being a static snapshot).
Attributes of an element are not considered child nodes, and therefore don’t appear in the childNodes collection2 This collection is read only.
an ordered list of all the direct child nodes of this node
Creates a duplicate of this node, including all attributes and their values (including attributes which are not explicitly defined but which have a default value in this document type).
Creates a duplicate of this node, including all attributes and their values (including attributes which are not explicitly defined but which have a default value in this document type). The duplicate node has no parent (parentNode is null) until it's added to the document, for example using appendChild.
If the deep argument is included and has the value true then the node's sub-tree (if any) will also be duplicated.
Cloning a sub-tree that is readonly results in a sub-tree that can be modified (ie. the sub-tree of a cloned node is always mutable, even if the original was immutable), with the exception that the children of a cloned EntityReference are always readonly.
Cloning an Element node also copies its attributes (including any default attributes), but does not copy its text unless the deep argument is true.
Cloning an Attr node directly (as opposed to attributes that belong to a cloned Element) creates a node for which the specified property is true.
Whether a Document, DocumentType, Entity or Notation node may be cloned is not defined by the DOM, and depends on the implementation (see Compatibility notes below).
If true duplicate the node's sub-tree as well as the node itself. If false only copy the node (and its attributes, if it's an Element).
The duplicate node.
The first node that is a direct child of this node (ie.
The first node that is a direct child of this node (ie. this node is its parent and it appears at the beginning of the childNodes collection), or null if there is no such node. This property is readonly.
The first node that is a direct child of this node
Returns whether an Element node has any attributes.
Returns whether an Element node has any attributes.
true if this node is an Element and has any effective attributes, otherwise false
Test whether a node has any child nodes; equivalent to evaluating whether the childNodes collection has a length greater than zero.
Test whether a node has any child nodes; equivalent to evaluating whether the childNodes collection has a length greater than zero.
true if this node has any children, otherwise false
Insert a new node as a child of this node, directly before an existing child of this node, or at the end of the list of children if no existing child is specified or it's null.
Insert a new node as a child of this node, directly before an existing child of this node, or at the end of the list of children if no existing child is specified or it's null. If the new child is already present in the DOM tree it is first removed (effectively moving it).
The new node to insert.
An existing child node that the new node should be inserted before. If this argument is null, the new node is inserted at the end of this node's list of children.
the inserted node
Test whether a specific feature of the DOM is implemented, and supported by this node.
Test whether a specific feature of the DOM is implemented, and supported by this node.
This method is essentially the same as hasFeature, except that it's concerned with whether a feature is supported by a specific node, rather than whether it's implemented in general.
The name of the feature to test, using one of the values defined in the DOM 2 Conformance list.
The DOM version to test. For DOM 2 this is always the value 2.0. If this argument is not specified, the method will return true if the feature is supported at any DOM level.
true if the feature is implemented and supported on this node, otherwise false
The last node that is a direct child of this node (ie.
The last node that is a direct child of this node (ie. this node is its parent and it appears at the end of the childNodes collection), or null if there is no such node. This property is readonly.
The last node that is a direct child of this node
The local name (ie.
The local name (ie. not including any namespace prefix) of a Element or Attr node; for other nodes this property is null.
DOM 1 methods such as getAttribute are not namespace aware, and identify nodes by their nodeName. Namespace aware DOM 2 methods such as getAttributeNS identify nodes by a combination of their namespaceURI and localName; the localName and prefix combined form a qualified name — a name which comprises the namespace prefix then the local name, delimited with a colon. This property is readonly.
The local name
The namespace URI of an Element or Attr node.
The namespace URI of an Element or Attr node. For other nodes, or elements or attributes created with a DOM 1 method that isn't namespace aware (such as createElement), or nodes with no namespace, this property is null.
This should not be a computed value or lookup of the namespace an element should have, it should be the literal value that it does have.
An Element node can inherit its namespace from an ancestor. However Attr nodes do not inherit a namespace from the element they're attached to — if an attribute does not have an explicitly defined namespace then it simply has no namespace. This property is readonly.
The namespace URI
The node immediately after this node (ie.
The node immediately after this node (ie. both nodes have the same parent and are next to each other in its childNodes collection), or null if there is no such node. This property is readonly.
The node immediately after this node
The name of this node
A numeric code that represents the type of this node +---------------------------+----+ | Element | 1 | | Attr | 2 | | Text | 3 | | CDATASection | 4 | | EntityReference | 5 | | Entity | 6 | | ProcessingInstruction | 7 | | Comment | 8 | | Document | 9 | | DocumentType | 10 | | DocumentFragment | 11 | | Notation | 12 | +---------------------------+----+
A numeric code that represents the type of this node +---------------------------+----+ | Element | 1 | | Attr | 2 | | Text | 3 | | CDATASection | 4 | | EntityReference | 5 | | Entity | 6 | | ProcessingInstruction | 7 | | Comment | 8 | | Document | 9 | | DocumentType | 10 | | DocumentFragment | 11 | | Notation | 12 | +---------------------------+----+
the numeric code
The value of this node
Puts this node's sub-tree in a state whereby only structural nodes separate Text nodes.
Puts this node's sub-tree in a state whereby only structural nodes separate Text nodes.
When a document is first loaded there will be only one Text node for each block of text. Operations such as splitText may divide blocks of text into multiple sibling Text nodes, as may creating and adding new Text nodes, but such divisions will not persist between sessions. The normalize method merges adjacent nodes to [re]create the load state of a single Text node for each block of text.
The Document which contains this node; or null if this node is itself a Document, or a DocumentType that is not associated with any document.
The Document which contains this node; or null if this node is itself a Document, or a DocumentType that is not associated with any document. This property is read-only.
The parent of this node; or null if it has no parent.
The parent of this node; or null if it has no parent.
Nodes which have just been created but not added to the document, or have just been removed from the document, or are Attr, Document, DocumentFragment or Entity nodes, do not have a parent. This property is readonly.
The namespace prefix of this node; or null if this node has no namespace.
The namespace prefix of this node; or null if this node has no namespace.
Only namespaced elements and attributes have a prefix; for other nodes, or for elements or attributes created with a non-namespace-aware method such as createElement, the prefix property is null.
Changing this value may also change the nodeName of this node (since the node name of a namespaced node is a combination of of localName and prefix), as well as the tagName and name properties of elements and attributes (respectively).
Changing the prefix of an element or attribute that has a default value in this document type does not cause a new default node to be created (ie. the prefix change might mean that the default is no longer present, but a new default will not appear to replace it). This property is read/write.
The node immediately before this node (ie.
The node immediately before this node (ie. both nodes have the same parent and are next to each other in its childNodes collection), or null if there is no such node. This property is readonly.
Removes a specified node from the children of this node.
Removes a specified node from the children of this node.
The node to be removed.
Replace an existing child of this node with a new child node.
Replace an existing child of this node with a new child node. If the new child is already present in the DOM tree it is first removed (effectively moving it).
The node to be added.
The node to be removed and replaced.
The node that was removed
The Node interface is the primary data type for the Document Object Model (DOM). It represents any single item in the tree, such as an Element, Attr, Document or Entity.
http://reference.sitepoint.com/javascript/Node