We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

Метод 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!

Особенность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка Element 23.0 23.0 (23.0) Нет 10.0 7.0
Поддержка CharacterData и DocumentType 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 (Да) 23.0 (23.0) Нет 16.0 Нет

Метки документа и участники

Внесли вклад в эту страницу: neoxaker, NikitaCoder, In4in
Обновлялась последний раз: neoxaker,