The ChildNode interface contains methods that are particular to Node objects that can have a parent.
ChildNode is a raw interface and no object of this type can be created; it is implemented by Element, DocumentType, and CharacterData objects.
Properties
There are neither inherited, nor specific properties.
Methods
There are no inherited methods.
ChildNode.remove()- Removes this
ChildNodefrom the children list of its parent. ChildNode.before()- Inserts a set of
NodeorDOMStringobjects in the children list of thisChildNode's parent, just before thisChildNode.DOMStringobjects are inserted as equivalentTextnodes. ChildNode.after()- Inserts a set of
NodeorDOMStringobjects in the children list of thisChildNode's parent, just after thisChildNode.DOMStringobjects are inserted as equivalentTextnodes. ChildNode.replaceWith()- Replace this
ChildNodein the children list of its parent with a set ofNodeorDOMStringobjects.DOMStringobjects are inserted as equivalentTextnodes.
Specifications
| Specification | Status | Comment |
|---|---|---|
| DOM The definition of 'ChildNode' in that specification. |
Living Standard | Split the ElementTraversal interface in ParentNode and ChildNode. previousElementSibling and nextElementSibling are now defined on the latter. The CharacterData and DocumentType implemented the new interfaces. Added the remove(), before(), after() and replaceWith() methods. |
| Element Traversal Specification The definition of 'ElementTraversal' in that specification. |
Recommendation | Added the initial definition of its properties to the ElementTraversal pure interface and use it on Element. |
Polyfill
External on github: childNode.js
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
Basic support (on Element) |
1.0 | 23.0 (23.0) | 9.0 | 10.0 | 4.0 |
Support on DocumentType and CharacterData |
23.0 | 23.0 (23.0) | Not supported | 16.0 | Not supported |
remove() |
29.0 | 23.0 (23.0) | Edge | 16.0 | Not supported |
before(), after(), and replaceWith() |
Not supported | Not supported | Not supported | Not supported | Not supported |
| Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
Basic support (on Element) |
(Yes) | 23.0 (23.0) | (Yes) | 10.0 | (Yes) |
Support on DocumentType and CharacterData |
(Yes) | 23.0 (23.0) | Not supported | 16.0 | Not supported |
remove() |
(Yes) | 23.0 (23.0) | Not supported | 16.0 | Not supported |
before(), after(), and replaceWith() |
Not supported | Not supported | Not supported | Not supported | Not supported |
See also
- The
ParentNodepure interface.