Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery选择器的性能特征与CSS选择器的性能特征有何不同?_Jquery_Css_Jquery Selectors_Css Selectors - Fatal编程技术网

jQuery选择器的性能特征与CSS选择器的性能特征有何不同?

jQuery选择器的性能特征与CSS选择器的性能特征有何不同?,jquery,css,jquery-selectors,css-selectors,Jquery,Css,Jquery Selectors,Css Selectors,昨天我偶然发现了谷歌Firebug的页面速度插件。关于使用高效CSS选择器,据说不要使用过度限定的选择器,即使用#foo而不是div#foo。我原以为后者会更快,但谷歌却不这么说,我又是谁呢 因此,我想知道jQuery选择器是否也是如此。我发现了on的链接,所以说我应该使用$(“div#foo”),这是我一直在做的,因为我认为通过限制选择器只匹配div元素,事情会加快。但是,它真的比像谷歌对CSS选择器所说的那样编写$(“#foo”)好吗?还是以不同的方式进行CSS与jQuery元素匹配,我应该

昨天我偶然发现了谷歌Firebug的页面速度插件。关于使用高效CSS选择器,据说不要使用过度限定的选择器,即使用
#foo
而不是
div#foo
。我原以为后者会更快,但谷歌却不这么说,我又是谁呢

因此,我想知道jQuery选择器是否也是如此。我发现了on的链接,所以说我应该使用
$(“div#foo”)
,这是我一直在做的,因为我认为通过限制选择器只匹配
div
元素,事情会加快。但是,它真的比像谷歌对CSS选择器所说的那样编写
$(“#foo”)
好吗?还是以不同的方式进行CSS与jQuery元素匹配,我应该坚持使用
$(“div#foo”)

$(“#foo”)
优于
$(“div#foo”)

由于id在文档中是唯一的,所以不必在其前面加上标记名

这里有一个很好的链接


Sizzle选择器引擎从右向左解析选择器


尽可能多地使用ID来提高性能。

选择器越具体,Sizzle(jQuery的选择器引擎)找到该对象的速度就越快

原因:
getElementsByTagName
用于将搜索范围缩小到少数情况


但这不适用于唯一的id名称

这不也取决于浏览器吗?例如:Google chrome非常强调Javascript处理,这与此无关。当然,不同的浏览器以不同的速度执行Javascript。但是,我想知道的是,哪种方法的时间复杂度更高,不同浏览器中的执行速度没有任何相关性。谢谢。所以它是#foo而不是div#foo。该页面还提到使用div.foo而不仅仅是.foo。那么它也适用于CSS吗?