通过id获取元素的更有效方法(如果其id是唯一的)?
#id
或
#div1 #id
或
span#id
为什么?
你可以告诉我在哪里可以读到这些东西吗? (如何更快,更有效地使用jQuery选择器和为什么如此)谢谢!
答案 0 :(得分:2)
#id
为什么呢?因为它不会查看其他条件,并且在任何情况下,#id
应该只有一个,因此它不会(在很多情况下)使用span#id
答案 1 :(得分:2)
#id
//在jQuery中通过Id获取元素的最有效方法
HTML元素的id被认为是唯一的,因此jQuery将使用document.getElementById()
而不是document.getElementsByTagName()
,并迭代搜索正确元素的元素数组。
答案 2 :(得分:1)
只是id更好,因为代码必须查找单个元素。
见这个测试证明它http://jsperf.com/id-vs-tag-id
答案 3 :(得分:1)
CSS选择器(以及 Sizzle ,jQuery中用于执行查询工作的东西)来自
从右到左
知道这一点,你可以自己轻松回答这个问题。只查询#id
始终是最快的解决方案。不仅仅是因为之后会有更多的语句被查询,而且jQuery也会为你优化这个案例。这意味着,只需要一个像#id
这样的选择器就可以直接调用.getElementById()
,这是获得元素引用的最快的DOM操作。
然而,在其他情况下,不要过度明显也会更快。那是因为从右到左的事情。
答案 4 :(得分:0)
使用jQuery很容易使用$("#theId")
因为它所寻找的是唯一的id而不是寻找其他条件,例如父ID
答案 5 :(得分:0)