如果我在页面上不必要的id
s元素,就像HTML Helper
在ASP.Net-MVC
中做的那样。
它是否会降低我的ID选择器的性能? (我有一个元素的大写金额巨大页)做太多ids伤害性能
例子:
// First DOM
<HTML>
...
<input type="text" value="first" id="useless" />
<input type="text" value="second" id="useful" />
</HTML>
// Second DOM
<HTML>
...
<input type="text" value="first"/>
<input type="text" value="second" id="useful" />
</HTML>
脚本:
<script>
alert($('#useful').val());
// never select the first element (with the useless id)
</script>
性能问题总是很棘手,因为实现之间可能存在这种差异。一般来说,我会同意这里的答案。我唯一要补充的是,一些浏览器,如Chrome和IE,使所有ID都能够被ID作为全局变量*(或全局对象上的属性)引用的ID引起全局混乱。因此,如果您谈论的数千个ID除了数字变体之外实际上是相同的,那么可能需要重新考虑您的方法。否则,我不会过多地流汗。 :) – 2012-02-08 15:36:06