關於childNodes的刪除

2022-07-24 23:27:24 字數 277 閱讀 1003

在使用childnodes時,發現需要刪除的元素多於1時,會出現無法全部刪除的情況。谷歌以後發現,該屬性返回的子節點集合是實時更新的,也就是說,在for迴圈中,當刪除第乙個子節點之後,第二次刪除的是原子節點集合中的第三個元素。故需要刪除全部子節點時,使用

while(node.childnodes.length>0)

在mdn中查了一下,childnodes返回的是nodelist物件,該nodelist物件是實時更新的(有些nodelist物件不是實時更新的),所以才會引起上述現象。

關於childNodes的length的問題

這個時候如果 document.getelementbyid ul1 childnodes.length 得到的結果是5,而不是2 因為它把之間的換行也當成是node 嚴格來說這也是正確的,節點分為元素節點 標籤 和文字節點 純文字 換行和空格實際上是文字節點。這個問題在chrome以及高版本ie會...

children和childNodes 的區別

1,childnodes 屬性,標準的,它返回指定元素的子元素集合,包括html節點,所有屬性,文字。可以通過nodetype來判斷是哪種型別的節點,只有當nodetype 1時才是元素節點,2是屬性節點,3是文字節點。有些人錯誤的使用 去取該集合元素,下表列出各瀏覽器對childnodes i 的...

childNodes中nodeType的12種型別

element node 1 元素節點 attribute node 2 屬性節點 text node 3 文字節點 cdata section node 4 cdata 區段 entity reference node 5 實體引用元素 entity node 6 實體 processing in...