1,childNodes屬性,標準的,它回傳指定元素的子元素集合,包括html節點,所有屬性,文本,可以通過nodeType來判斷是哪種型別的節點,只有當nodeType==1時才是元素節點,2是屬性節點,3是文本節點,
有些人錯誤的使用()去取該集合元素,下表列出各瀏覽器對childNodes(i)的支持情況:

2,有時候需要獲取指定元素的第一個html子節點(非屬性/文本節點),最容易想到的就是firstChild屬性,代碼中第一個html節點前如果有換行,空格,那么firstChild回傳的就不是你想要的了,可以使用nodeType來判斷下,
Js代碼
function getFirst(elem){
for(var i=0,e;e=elem.childNodes\[i++\];){
if(e.nodeType==1)
return e;
}
}
3,children屬性,非標準的,它回傳指定元素的子元素集合,經測驗,它只回傳html節點,甚至不回傳文本節點,且在所有瀏覽器下表現驚人的一致,和childNodes一樣,在firefox下不支持()取集合元素,因此如果想獲取指定元素的第一個html節點,可以使用children[0]來替代上面的getFirst函式,需注意children在IE中包含注釋節點,
相關資源:
http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-1451460987
http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-1451460987
http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-536297177
https://developer.mozilla.org/En/DOM/Element.children
http://msdn.microsoft.com/en-us/library/ms537446%28VS.85%29.aspx
文章來自:https://www.iteye.com/blog/snandy-547369
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/65726.html
標籤:Html/Css
