Node.remove()
Метод Node.remove()
удаляет узел из дерева DOM
То, что элемент удалён из DOM, ещё не значит, что он удалён совсем!
Он остался объектом и исчезнет только тогда, когда исчезнут все ссылки на него.
Синтаксис
Node.remove();
Node
- любой узел DOM
Пример
Использование remove()
<div id="box"> <div id="one"></div> <div id="two"></div> </div>
var elem = document.querySelector("#one");
elem.remove();
alert(document.querySelector("#box").innerHTML); //Исчез блок #one
alert(elem); //Но как видите, сам объект ещё жив
Полифил
Можно создать полифил для IE 9 и выше, используя следующий код:
(function() {
var arr = [window.Element, window.CharacterData, window.DocumentType];
var args = [];
arr.forEach(function (item) {
if (item) {
args.push(item.prototype);
}
});
// 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);
}
});
});
})(args);
})();
Спецификация
Спецификация | Статус | Комментарий |
---|---|---|
DOM Определение 'ChildNode.remove' в этой спецификации. |
Живой стандарт | Initial definition. |
Поддержка браузерами
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help! (en-US)
Особенность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка Element |
23.0 | 23.0 (23.0) | Нет | 10.0 | 7.0 |
Поддержка CharacterData и DocumentType (en-US) |
29.0 | 23.0 (23.0) | Нет | 16.0 | 7.0 |
Особенность | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Базовая поддержка Element |
(Да) | 23.0 (23.0) | Нет | 10.0 | Нет |
Поддержка CharacterData и DocumentType (en-US) |
(Да) | 23.0 (23.0) | Нет | 16.0 | Нет |