亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

訪問子節點childNodes 的相關問題

代碼部分如下:

<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)+"個節點的名稱是:"+x[i].nodeName+"<br />");

? ? ?document.write("第"+(i+1)+"個節點的值是:"+x[i].nodeValue+"<br />");

? ? ?document.write("第"+(i+1)+"個節點的類型是:"+x[i].nodeType+"<br />");

?}

?

?

</script>

</body>

本人是新手自學,請大神們給解釋的詳細一些:

我不明的地方:var x=document.getElementsByTagName("div")[0].childNodes;

這行代碼的意思是 找到類標簽“<div>”保存到數組x中,但是為什么要加[0],加[0]的意義是什么,難道是從x數組中第一個元素開始的意思嗎?

麻煩大神了給詳細講解下 不勝感謝!


正在回答

6 回答

正如你所說,document.getElementsByTagName("div")是找到代碼中所有的div元素節點,這段代碼里面有兩個div,下標分別是0和1。document.getElementsByTagName("div")[0].childNodes是下標為0的div元素里面所有的子節點,有一個文本節點,三個元素節點。若是你把那個0改為1的話那就只有一個文本節點了。

0 回復 有任何疑惑可以回復我~

剛看到的:[0]表示數組的第一個元素,放在這段代碼里就是獲取第一個div元素,因為一段js代碼中可能不止一個div元素。希望能幫到你!

0 回復 有任何疑惑可以回復我~

我也是不懂為什么要加[0],剛發的問題,在線等!

0 回復 有任何疑惑可以回復我~

var x=document.getElementsByTagName("div")返回的應該是這個頁面上所有的<div>,是個集合或者數組吧,然后,var x=document.getElementsByTagName("div")[0].childNodes就是獲取數組第一一個元素,也就是第一個<div>標簽下的所有子節點。是這樣理解嗎

0 回復 有任何疑惑可以回復我~

sorry啊,我明白了,var x=document.getElementsByTagName("div")[0].childNodes; 這個x數組中有兩個元素,我們的目的是要第一個元素下的所有子節點! ?額。。。自問自答了!

1 回復 有任何疑惑可以回復我~

在線等~~~~!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468966    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

訪問子節點childNodes 的相關問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號