Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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选择器-什么更快?_Jquery_Jquery Selectors - Fatal编程技术网

jQuery选择器-什么更快?

jQuery选择器-什么更快?,jquery,jquery-selectors,Jquery,Jquery Selectors,$('#content td#foo').show(); $('td#foo').show() td位于内容部门的某个深处 什么更快?你可以简单地写 $("#foo").show(); 同一id的元素不能超过1个。因此无需使用任何其他选择器来获取具有特定id的元素。因此可以避免使用td标记选择器。这两个选择器都将解析为: $('#foo').show(); 然而,报告说: 对于id选择器,jQuery使用JavaScript函数document.getElementById(),这非常高效。

$('#content td#foo').show(); $('td#foo').show()

td位于内容部门的某个深处

什么更快?

你可以简单地写

$("#foo").show();

同一id的元素不能超过1个。因此无需使用任何其他选择器来获取具有特定id的元素。因此可以避免使用td标记选择器。

这两个选择器都将解析为:

$('#foo').show();
然而,报告说:

对于id选择器,jQuery使用JavaScript函数document.getElementById(),这非常高效。当另一个选择器连接到id选择器(如h2#pageTitle)时,jQuery会在将元素标识为匹配项之前执行额外的检查

您可以认为前面提到的附加检查完全没有意义,除非您的标记中有重复的ID,这在HTML ID属性的定义和用法方面是不正确的。请参阅。

最快的是:

$('#foo').show();

ID必须是唯一的,这会导致在浏览器中查找对DOM元素的引用的哈希表,不会比这更快。如果您的ID
foo
不是唯一的,那么您还有其他问题……这是无效的HTML。

是否有可能存在ID为foo的元素不是
TD
元素?否则,请使用rahul的建议。Thx的家伙们可以快速获得帮助!:-)修正了打字错误。谢谢@fudgey