訪問子節(jié)點(diǎn)childNodes 的相關(guān)問題
代碼部分如下:
<body>
<div>
? javascript ?
? <p>javascript</p>
? <div>jQuery</div>
? <h5>PHP</h5>
</div>
<script type="text/javascript">
?var x=document.getElementsByTagName("div")[0].childNodes;
?for(var i=0;i<x.length;i++)
?{
? ? ?document.write("第"+(i+1)+"個(gè)節(jié)點(diǎn)的名稱是:"+x[i].nodeName+"<br />");
? ? ?document.write("第"+(i+1)+"個(gè)節(jié)點(diǎn)的值是:"+x[i].nodeValue+"<br />");
? ? ?document.write("第"+(i+1)+"個(gè)節(jié)點(diǎn)的類型是:"+x[i].nodeType+"<br />");
?}
?
?
</script>
</body>
本人是新手自學(xué),請(qǐng)大神們給解釋的詳細(xì)一些:
我不明的地方:var x=document.getElementsByTagName("div")[0].childNodes;
這行代碼的意思是 找到類標(biāo)簽“<div>”保存到數(shù)組x中,但是為什么要加[0],加[0]的意義是什么,難道是從x數(shù)組中第一個(gè)元素開始的意思嗎?
麻煩大神了給詳細(xì)講解下 不勝感謝!
2017-06-27
正如你所說(shuō),document.getElementsByTagName("div")是找到代碼中所有的div元素節(jié)點(diǎn),這段代碼里面有兩個(gè)div,下標(biāo)分別是0和1。document.getElementsByTagName("div")[0].childNodes是下標(biāo)為0的div元素里面所有的子節(jié)點(diǎn),有一個(gè)文本節(jié)點(diǎn),三個(gè)元素節(jié)點(diǎn)。若是你把那個(gè)0改為1的話那就只有一個(gè)文本節(jié)點(diǎn)了。
2017-06-16
剛看到的:[0]表示數(shù)組的第一個(gè)元素,放在這段代碼里就是獲取第一個(gè)div元素,因?yàn)橐欢蝚s代碼中可能不止一個(gè)div元素。希望能幫到你!
2017-06-16
我也是不懂為什么要加[0],剛發(fā)的問題,在線等!
2017-06-09
var x=document.getElementsByTagName("div")返回的應(yīng)該是這個(gè)頁(yè)面上所有的<div>,是個(gè)集合或者數(shù)組吧,然后,var x=document.getElementsByTagName("div")[0].childNodes就是獲取數(shù)組第一一個(gè)元素,也就是第一個(gè)<div>標(biāo)簽下的所有子節(jié)點(diǎn)。是這樣理解嗎
2017-05-25
sorry啊,我明白了,var x=document.getElementsByTagName("div")[0].childNodes; 這個(gè)x數(shù)組中有兩個(gè)元素,我們的目的是要第一個(gè)元素下的所有子節(jié)點(diǎn)! ?額。。。自問自答了!
2017-05-25
在線等~~~~!