一、節(jié)點(diǎn)的定義
dom節(jié)點(diǎn)樹(shù)
圖中可見(jiàn)節(jié)點(diǎn)HTML文檔中的每個(gè)成分都是一個(gè)節(jié)點(diǎn):
- 整個(gè)文檔是一個(gè)文檔節(jié)點(diǎn)
- 每個(gè)HTML標(biāo)簽是一個(gè)元素節(jié)點(diǎn)
- 包含在HTML元素中的文本是文本節(jié)點(diǎn)
- 每個(gè)HTML屬性是一個(gè)屬性節(jié)點(diǎn)
- 注釋屬于注釋節(jié)點(diǎn)
備注:通過(guò)DOM,可以訪問(wèn)HTML文檔中的每個(gè)節(jié)點(diǎn)。
二、節(jié)點(diǎn)引用
節(jié)點(diǎn)的絕對(duì)引用:
- document.documentElement返回文檔的根節(jié)點(diǎn)
- document.activeElement返回當(dāng)前文檔中被擊活的標(biāo)簽節(jié)點(diǎn)
- event.fromElement返回鼠標(biāo)移出的源節(jié)點(diǎn)
- event.toElement返回鼠標(biāo)移入的源節(jié)點(diǎn)
- event.srcElement返回激活事件的源節(jié)點(diǎn)
節(jié)點(diǎn)的相對(duì)引用:(設(shè)當(dāng)前對(duì)節(jié)點(diǎn)為node)
- node.parentNode node.parentElement 返回父節(jié)點(diǎn),document.parentNode()返回null
- node.childNodes[1] 符合標(biāo)準(zhǔn),返回子節(jié)點(diǎn)集合(包含文本節(jié)點(diǎn)及標(biāo)簽節(jié)點(diǎn)),文本和屬性節(jié)點(diǎn)的childNodes永遠(yuǎn)是null.先獲取長(zhǎng)度node.childNodes.length,然后可以通過(guò)循環(huán)或者索引找到需要的節(jié)點(diǎn).
//對(duì)與文本節(jié)點(diǎn)的處理: eg: var myTextNodes = document.getElementById("test").childNodes; var count = myTextNodes.length; for(var i = 0; i < count; i++) { if(myTextNodes[i].nodeType=="3" && myTextNodes[i].nodeName!="#text"){//排除IE空白文本的節(jié)點(diǎn) alert(myTextNodes[i]); } }
- node.children 不符合標(biāo)準(zhǔn),不推薦使用,它只返回html節(jié)點(diǎn),甚至不返回文本節(jié)點(diǎn)
- node.firstChild返回第一個(gè)子節(jié)點(diǎn),firstChild=childNodes[0]
- node.lastChild返回最后一個(gè)子節(jié)點(diǎn),lastChide=childNodes[childNodes.length-1]
- node.nextSibling()返回同屬下一個(gè)節(jié)點(diǎn)
- node.previousSibling()返回同屬上一個(gè)節(jié)點(diǎn)
出處:阿里媽媽UED
責(zé)任編輯:bluehearts
上一頁(yè) 下一頁(yè) 小結(jié)下dom節(jié)點(diǎn)操作 [2]
◎進(jìn)入論壇網(wǎng)頁(yè)制作、WEB標(biāo)準(zhǔn)化版塊參加討論,我還想發(fā)表評(píng)論。
|