根節(jié)點(diǎn)
-
document.documentElement返回文檔對(duì)象( document )的根元素 -
document.head( <head>標(biāo)簽 ) -
document.body( <body>標(biāo)簽 )
遍歷節(jié)點(diǎn)
父節(jié)點(diǎn):parentNode
子節(jié)點(diǎn):childNodes
子元素節(jié)點(diǎn):children
前一個(gè)兄弟節(jié)點(diǎn):previousSibling
后一個(gè)兄弟節(jié)點(diǎn):nextSibling
第一個(gè)子節(jié)點(diǎn):firstChild
第一個(gè)子元素節(jié)點(diǎn):firstElementChild
最后一個(gè)子節(jié)點(diǎn):lastChild( 可以是任何類型的節(jié)點(diǎn) )
最后一個(gè)子元素節(jié)點(diǎn):lastElementChild
返回一個(gè)節(jié)點(diǎn)的根元素:ownerDocument
節(jié)點(diǎn)信息
節(jié)點(diǎn)類型:nodeType( 返回一個(gè)數(shù)字值 )
節(jié)點(diǎn)名字:nodeName( 元素節(jié)點(diǎn)返回大寫 )
節(jié)點(diǎn)內(nèi)容:nodeValue
獲取所有節(jié)點(diǎn)的方法
- 方法 1 ( 遞歸遍歷childNodes )
var elemArr = [];
function ergodic(child) {
for (var i = 0, len = child.length; i < len; i++) {
if (child[i].nodeType === 1) {
elemArr[elemArr.length] = child[i];
if (child[i].childNodes.length > 0) {
ergodic(child[i].childNodes);
}
}
}
}
- 方法 2 ( 遞歸遍歷children )
var elemArr = []
function ergodic(child) {
for (var i = 0, len = child.length; i < len; i++) {
elemArr[elemArr.length] = child[i];
if (child[i].children.length > 0) {
ergodic(child[i].children);
}
}
}