The NonDocumentTypeChildNode interface contains methods that are particular to Node objects that can have a parent, but not suitable for DocumentType.

NonDocumentTypeChildNode is a raw interface and no object of this type can be created; it is implemented by Element, and CharacterData objects.


There is no inherited property.

NonDocumentTypeChildNode.previousElementSibling 只读
Returns the Element immediately prior to this node in its parent's children list, or null if there is no Element in the list prior to this node.
NonDocumentTypeChildNode.nextElementSibling 只读
Returns the Element immediately following this node in its parent's children list, or null if there is no Element in the list following this node.


There is neither inherited, nor specific method.


Specification Status Comment
Living Standard Splitted the ElementTraversal interface in ParentNode, ChildNode, and NonDocumentTypeChildNode. The previousElementSibling and nextElementSibling are now defined on the latter.
The CharacterData and Element implemented the new interfaces.
Element Traversal Specification
Recommendation Added the initial definition of its properties to the ElementTraversal pure interface and use it on Element.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (on Element) 1.0 3.5 (1.9.1) 9.0 10.0 4.0
Support (on CharacterData) 1.0 25.0 (25.0) [1] 9.0 10.0 4.0
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (on Element) (Yes) 3.5 (1.9.1) (Yes) 10.0 (Yes)
Support (on CharacterData) (Yes) 25.0 (25.0) (Yes) 10.0 (Yes)

[1] Firefox 25 also added the two properties defined here on DocumentType, this was removed in Firefox 28 due to compatibility problems, and led to the creation of this new pure interface.

See also