1. 概述
刪除后的節點雖然不在文檔樹中了,但其實它還在內存中,可以隨時再次被添加到別的位置。
當你遍歷一個父節點的子節點并進行刪除操作時,要注意,children屬性是一個只讀屬性,并且它在子節點變化時會實時更新
// 拿到待刪除節點:var self = document.getElementById('to-be-removed');// 拿到父節點:var parent = self.parentElement;// 刪除:var removed = parent.removeChild(self);removed === self; // true2. example
<!DOCTYPE html><html><head></script></head><body><ul id="test-list">  <li>JavaScript</li>  <li>Swift</li>  <li>HTML</li>  <li>ANSI C</li>  <li>CSS</li>  <li>DirectX</li></ul><script>var p= document.getElementById('test-list');var length = p.children.length;var i=0;for(; i<length; ){  var li = p.children[i];  var text = li.innerText;  if(text!=='JavaScript' && text!=='HTML' && text!=='CSS'){    p.removeChild(li);    alert(p.children.toString());    length--;  }else{    i++;  }}// 測試:;(function () {  var    arr, i,    t = document.getElementById('test-list');  if (t && t.children && t.children.length === 3) {    arr = [];    for (i = 0; i < t.children.length; i ++) {      arr.push(t.children[i].innerText);    }    if (arr.toString() === ['JavaScript', 'HTML', 'CSS'].toString()) {      alert('測試通過!');    }    else {      alert('測試失敗: ' + arr.toString());    }  }  else {    alert('測試失敗!');  }})();</script></body></html>以上這篇js removeChild 方法深入理解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答