我有大约数千个以这种方式构建的DIV标签:
<div id="1">
<div class="1"></div>
<div class="2"></div>
...
</div>
<div id="2">
<div class="1"></div>
<div class="2"></div>
...
</div>
如果我现在要访问某个特定节点,请说'div#10 div.5' - 使用javascript DOM遍历的最快方法是什么?我已经拥有索引值“10”和“5” - 我只是在寻找实现这一目标的最快方法。
非常感谢。
答案 0 :(得分:4)
如果你有大约1000个DIV,我认为这是自动生成的HTML?
如果是这样,是否有任何理由不能为内部DIV添加id?
<div id="1">
<div id="1.1" class="1"></div>
<div id="1.2" class="2"></div>
...
</div>
<div id="2">
<div id="2.1" class="1"></div>
<div id="2.2" class="2"></div>
...
</div>
然后你可以使用getElementById而不必担心订购或间隔等。
由于元素ID必须在页面上是唯一的,因此这应该始终是查找元素的最快方法。
答案 1 :(得分:3)
使用jquery:
alert($("#10 > .5").html());
答案 2 :(得分:3)
没有验证并且假设子节点是唯一的节点并且全部按顺序排列;
document.getElementById('10').childNodes[4];
注意成为节点https://developer.mozilla.org/En/Whitespace_in_the_DOM
的空白