這麼多混淆,只有很少的答案。我試圖通過DOM循環,通過id尋找一個特定的節點,但是,這段代碼有幾個問題,我沒有解釋。首先,childNodes列表的長度爲'5'。兩個「ul」,兩個「id」,如果這些數字...和一個運氣?使用javascript檢測HTML DOM中元素的屬性
其次,它死於if(y[i].hasAttribute('id')===true)
。 Firebug說這不是一個功能。我沒有理由不相信,但我不確定它爲什麼不相信。
謝謝你的幫助。
<div id="list">
<ul id="first"></ul>
<ul id="second"></ul>
</div>
<script>
var comments=document.getElementById('list')
var y=comments.childNodes;
var count=y.length
for(i=0;i<count;i++)
{
document.write(y.length);
if(y[i].hasAttribute('id')===true)
{ document.write('here!');}
}
</script>
也許嘗試:'if(y [i] .nodeType === 1 && y [i] .hasAttribute('id')=== true){'這樣你只能檢查'Element'節點。 **或者**,使用'var y = comments.children;'只能遍歷'Element' nodex。 – Ian