5 回答

TA貢獻(xiàn)331條經(jīng)驗(yàn) 獲得超534個(gè)贊
由于div#con和p之間有空格,在Chrome瀏覽器中空格是一個(gè)#text文本節(jié)點(diǎn)(大概是這樣吧),如果這段代碼在IE中執(zhí)行就不會(huì)出現(xiàn)這種情況了。為了瀏覽器兼容可以使用這個(gè)函數(shù)
function?getChildren?(ele)?{ var?children?=?ele.childNodes; var?arr?=?[]; for?(var?i?=?0;?i?<?children.length;?i++)?{ if?(children[i].nodeType?==?1)?{ arr.push(children[i]); } } return?arr; }
獲取#con下面的第一個(gè)p元素
var?p?=?getChildren(document.getElementById('con'))[0]; alert(p);??????//[object?HTMLParagraphElement]

TA貢獻(xiàn)15條經(jīng)驗(yàn) 獲得超10個(gè)贊
<div id="con"><div>jQuery</div><p>javascript</p><h5>PHP</h5></div>
去掉節(jié)點(diǎn)之間的空白

TA貢獻(xiàn)22條經(jīng)驗(yàn) 獲得超15個(gè)贊
除IE外,其余瀏覽器中?節(jié)點(diǎn)之間的空白符是文本節(jié)點(diǎn)。
所以,以上代碼中 id=con 的子節(jié)點(diǎn)總共有七個(gè),分別為 空白節(jié)點(diǎn)、P、空白節(jié)點(diǎn)、DIV、空白節(jié)點(diǎn)、H5、空白節(jié)點(diǎn)。
PS:仔細(xì)看 9-8 訪問(wèn)子節(jié)點(diǎn)childNodes中的內(nèi)容。

TA貢獻(xiàn)1123條經(jīng)驗(yàn) 獲得超629個(gè)贊
因?yàn)槌薎E,其它瀏覽器會(huì)把你的換行符(盡管你只是代碼換行了),算成一個(gè)文本節(jié)點(diǎn)。
添加回答
舉報(bào)