Node.removeChild
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Аннотация
Удаляет дочерний элемент из DOM. Возвращает удалённый элемент.
Синтаксис
var oldChild = element.removeChild(child); element.removeChild(child);
child
дочерний элемент который будет удалён из DOM.element
родительский элемент удаляемогоchild
.oldChild
ссылка на удаляемый дочерний элемент.oldChild
===child
.
Удалённый дочерний элемент остаётся в памяти, но больше не является частью DOM. Вы можете повторно использовать удалённый элемент с помощью ссылки на объект - oldChild
.
Если child
не является дочерним элементом element
, тогда метод генерирует исключение. Также это происходит если child
является дочерним элементом element
во время вызова метода, но был удалён во время вызова обработчика событий удаляющего элемент(т.e при удалении элемента непосредственно перед вызовом обработчика событий).
Пример
<!-- Пример --> <div id="top" align="center"> <div id="nested"></div> </div>
// Удаление элемента с известным родителем
var d = document.getElementById("top");
var d_nested = document.getElementById("nested");
var throwawayNode = d.removeChild(d_nested);
// Удаление элемента без указания его родителя
var node = document.getElementById("nested");
if (node.parentNode) {
node.parentNode.removeChild(node);
}
// Удаление всех дочерних элементов
var element = document.getElementById("top");
while (element.firstChild) {
element.removeChild(element.firstChild);
}
Спецификации
Specification |
---|
DOM Standard # dom-node-removechild |
Совместимость с браузерами
BCD tables only load in the browser