我想知道使用document.getElementById()多次更有效率或使用document.getElementsByTagName()并循环查找特定元素ID的结果?
答案 0 :(得分:5)
一切都取决于。你有多少具有给定ID的元素?有多少具有相同标签名称的元素?
例如,如果您想要ID为1和3的元素,并且您拥有:
<ul>
<li id="1">1</li>
<li id="2">2</li>
<li id="3">3</li>
<!-- Followed by 10,000 more li tags -->
</ul>
你最好两次打电话给getElementById()
。但是如果你想要除了ID 15以外的所有东西,你可能最好不要做列表和检查ID。
另一种方法是将类添加到要选择的特定元素。然后你可以按类选择(也许用JQuery class selector),这将为你提供良好的表现。
请注意,Javascript性能差异很大between browsers甚至versions of browsers之间。最好对目标浏览器进行一些测试。