选择器的特定性如何增加会影响jQuery的性能?

时间:2010-10-16 20:33:58

标签: jquery

换句话说,jQuery更容易执行哪一行:$("#id3")$("#id1 #id2 #id3"),其中id1id2id3是嵌套的div' IDS。编写快速jQuery选择器有什么规则吗?

1 个答案:

答案 0 :(得分:2)

$('#id3')对jQuery来说更快,因为它检测到单个#选择器的特殊情况并重定向到document.getElementById()。它也显然更简单;您应该使用单个ID选择器,除非您确实需要检查带有id="id3"的元素是否在id="id2"元素内。

请注意,对于像这样的大多数其他标准CSS选择器(即不是像:first那样有问题的Sizzle特定选择器),jQuery将尝试使用现代浏览器的querySelectorAll()方法,因此速度很快Sizzle比浏览器自身的性能更重要,这使得它成为一个不同的问题。