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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

getElementsByTagName()如何只獲取第一層子標簽的集合?

getElementsByTagName()如何只獲取第一層子標簽的集合?

TREASURE2016 2016-08-30 14:10:09
請各位大神不吝賜教!下面貼代碼:<div id="main"> ? ?<div class="on"> ? ? ? ?<div class="item-top"></div> ? ? ? ?<div class="item-dis"></div> ? ?</div> ? ?<div class="hide"> ? ? ? ?<div class="item-top"></div> ? ? ? ?<div class="item-dis"></div> ? ?</div> ? ?<div class="hide"> ? ? ? ?<div class="item-top"></div> ? ? ? ?<div class="item-dis"></div>? ?</div></div>我想獲取id="main"下面的三組<div>改變它們的class值。用var oTab=document.getElementById("main");var oDivs=oTab.getElementsByTagName("div");得到的卻是class="on"下面的div。如何才能只取id="main"的第一層div集合?
查看完整描述

4 回答

?
南秋艷時北雨涼

TA貢獻13條經驗 獲得超6個贊

var?oTab?=?document.getElementById('main');
var?child?=?oTab.children;

for?(var?i?=?0,?len?=?child.length;?i?<?len;?i++)?{
????child[i].className?=?'填入class值';
????}


查看完整回答
2 反對 回復 2016-08-30
?
stone310

TA貢獻361條經驗 獲得超191個贊

你說的方法得出的應該是class="main"下面所有div的集合

如果只取id="main"的第一層div集合,用.children即可(oTab.children)

查看完整回答
3 反對 回復 2016-08-30
?
qq_奈奈奈_03699702

TA貢獻19條經驗 獲得超5個贊

不考慮ie6,7可以用querySelectorAll.

當然也可以這樣:

????var?parent=document.getElementsByTagName("div")[0];
????var?children=parent.childNodes,result=[];
????for(var?i=0,len=children.length;i<len;i++){
????????if(children[i].nodeName!=="#text"){
????????????result.push(children[i]);
????????}
????}


查看完整回答
反對 回復 2016-08-30
?
我不是程序猿_我是攻城獅

TA貢獻2條經驗 獲得超0個贊

?window.onload=function(){

? ? ? var idmain=document.getElementsByTagName("div")[0]; ?

?var on=idmain.childNodes[1];

?alert(on.innerHTML);

? ? } ?

節點問題 on.innerHTML彈出的是這個 :

<div class="item-top">1</div>

? <div class="item-dis">2</div>

我覺得on就應該是那個div.on

查看完整回答
反對 回復 2016-08-30
  • 4 回答
  • 1 關注
  • 3746 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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