欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js removeChild 方法深入理解

 更新時間:2016年08月16日 08:52:21   投稿:jingxian  
下面小編就為大家?guī)硪黄猨s removeChild 方法深入理解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1. 概述

刪除后的節(jié)點雖然不在文檔樹中了,但其實它還在內存中,可以隨時再次被添加到別的位置。

當你遍歷一個父節(jié)點的子節(jié)點并進行刪除操作時,要注意,children屬性是一個只讀屬性,并且它在子節(jié)點變化時會實時更新

// 拿到待刪除節(jié)點:
var self = document.getElementById('to-be-removed');
// 拿到父節(jié)點:
var parent = self.parentElement;
// 刪除:
var removed = parent.removeChild(self);
removed === self; // true

2. 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 方法深入理解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論