--- title: ChildNode.remove() slug: Web/API/ChildNode/remove tags: - API - ChildNode - DOM - Experimental - Método(2) - remove translation_of: Web/API/ChildNode/remove ---
{{APIRef("DOM")}}

O método ChildNode.remove() remove o objeto da árvore a que ele pertence.

Sintase

elementNodeReference.remove();

Exemplo

Usando 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(); // Remove o div com o id 'div-02'

ChildNode.remove() não tem escopo

O método remove() não tem escopo na função with. Veja {{jsxref("Symbol.unscopables")}} para mais informação.

with(node) {
  remove();
}
// ReferenceError: remove is not defined 

Polyfill

Você pode evitar incompatibilidade ao usar o método remove() no Internet Explorer 9 em diante com o seguinte código:

// de: 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]);

Especificações

Especificação Situação Comentário
{{SpecName('DOM WHATWG', '#dom-childnode-remove', 'ChildNode.remove')}} {{Spec2('DOM WHATWG')}} Definição Inicial.
{{SpecName('DOM4', '#dom-childnode-remove', 'ChildNode.remove')}} {{Spec2('DOM4')}}  

Compatibilidade de navegadores

{{Compat("api.ChildNode.remove")}}

 

Veja também