The ChildNode.remove() method removes the object from the tree it belongs to.
Syntax
node.remove();
Example
Using remove()
<div id="div-01">Here is div-01</div> <div id="div-02">Here is div-02</div> <div id="div-03">Here is div-03</div>
var el = document.getElementById('div-01');
el.nextElementSibling.remove(); // Removes the div with the 'div-02' id
ChildNode.remove() is unscopable
The remove() method is not scoped into the with statement. See Symbol.unscopables for more information.
with(node) {
remove();
}
// ReferenceError: remove is not defined
Polyfill
You can polyfill the remove() method in Internet Explorer 9 and higher with the following code:
// from:https://github.com/jserz/js_piece/blob/master/DOM/ChildNode/remove()/remove().md
(function (arr) {
arr.forEach(function (item) {
if (item.hasOwnProperty('remove')) {
return;
}
Object.defineProperty(item, 'remove', {
configurable: true,
enumerable: true,
writable: true,
value: function remove() {
this.parentNode.removeChild(this);
}
});
});
})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);
Specifications
| Specification | Status | Comment |
|---|---|---|
| DOM The definition of 'ChildNode.remove' in that specification. |
Living Standard | Initial definition. |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
Basic support (on Element) |
23.0 | (Yes) | 23.0 (23.0) | No support[1] | 10.0 | 7.0 |
Support on CharacterData and DocumentType |
29.0 | (Yes) | 23.0 (23.0) | No support | 16.0 | 7.0 |
| Feature | Android | Android Webview | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Mobile |
|---|---|---|---|---|---|---|---|---|
Basic support (on Element) |
(Yes) | (Yes) | (Yes) | 23.0 (23.0) | No support | 10.0 | No support | (Yes) |
Support on CharacterData and DocumentType |
(Yes) | (Yes) | (Yes) | 23.0 (23.0) | No support | 16.0 | No support | (Yes) |
[1] IE supports the non-standard removeNode(true) function: MSDN: removeNode.
See also
- The
ChildNodepure interface.
Document Tags and Contributors
Tags:
Contributors to this page:
DomenicDenicola,
stevenwdv,
jszhou,
arronei,
erikadoyle,
jpmedley,
fscholz,
theotherdell,
huupoke12,
jkbockstael,
pepri,
valtlait1,
cvrebert,
shgysk8zer0,
paul.irish,
teoli,
ziyunfei,
jyasskin,
elisee,
tregagnon
Last updated by:
DomenicDenicola,