混乱が多く、答えはほとんどありません。ID で特定のノードを探して DOM をループしようとしていますが、このコードには説明のつかない問題がいくつかあります。まず、childNodes リストの長さが「5」になります。2 つの「ul」、2 つの「id」、それらがカウントされる場合...そして 1 つが運のためですか?
次に、 で死ぬ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>