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.
There are neither inherited, nor specific properties.
There are no inherited methods.
ChildNode.remove()
ChildNode from the children list of its parent.ChildNode.before()
Node or DOMString objects in the children list of this ChildNode's parent, just before this ChildNode. DOMString objects are inserted as equivalent Text nodes.ChildNode.after()
Node or DOMString objects in the children list of this ChildNode's parent, just after this ChildNode. DOMString objects are inserted as equivalent Text nodes.ChildNode.replaceWith()
ChildNode in the children list of its parent with a set of Node or DOMString objects. DOMString objects are inserted as equivalent Text nodes.| 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. | Obsolete | Added the initial definition of its properties to the ElementTraversal pure interface and use it on Element. |
External on github: childNode.js
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | 1 | Yes | 23 | 9 | 10 | 4 |
after
|
54 | 17 | 49 | No | 39 | No |
before
|
54 | 17 | 49 | No | 39 | No |
remove |
23 | 12 | 23 | No | 10 | 7 |
replaceWith
|
54 | 17 | 49 | No | 39 | No |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | Yes | Yes | Yes | 23 | 10 | Yes | Yes |
after
|
54 | 54 | No | 49 | 39 | No | 6.0 |
before
|
54 | 54 | No | 49 | 39 | No | 6.0 |
remove |
Yes | Yes | Yes | 23 | 10 | 7 | Yes |
replaceWith
|
54 | 54 | No | 49 | 39 | No | 6.0 |
ParentNode pure interface.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ChildNode