Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.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,我已经开始使用Wijmo工具包,并在其文档页面中遇到了许多类似的示例选择器: $(":input[type='radio']").wijradio(); 我会这样写我的: $('input[type=radio]').wijradio(); 这些都是一样的,还是我遗漏了什么 请注意,上面有两个区别:第一个选择器的前缀是冒号,输入类型有引号。输入选择器:输入选择器基本上选择所有的表单控件(输入、文本区域、选择和按钮元素)其中asinput选择器按标记名input选择所有元素 因为单选按钮是一个

我已经开始使用Wijmo工具包,并在其文档页面中遇到了许多类似的示例选择器:

$(":input[type='radio']").wijradio();
我会这样写我的:

$('input[type=radio]').wijradio();
这些都是一样的,还是我遗漏了什么


请注意,上面有两个区别:第一个选择器的前缀是冒号,输入类型有引号。

输入选择器:输入选择器基本上选择所有的
表单
控件(输入、文本区域、选择和按钮元素)其中as
input
选择器按标记名
input
选择所有元素

因为单选按钮是一个
表单
元素,而且它还使用
输入
标记,所以它们都可以用来选择单选按钮。但是,这两种方法查找元素的方式不同,因此每种方法都有不同的性能优势

:input
是一个CSS选择器,而
input
是一个CSS选择器

text区域
按钮
选择
元素将与前者匹配,但与后者不匹配

后者速度更快,因此请将其用于特定的
收音机
示例。使用
:在需要“所有表单元素”时输入
,即使它们不是严格意义上的
标记。即使在这种情况下,建议首先使用标准CSS选择器,然后在该集合上使用
.filter(':input')

因为:输入是jQuery扩展,而不是CSS的一部分 规范,使用:input的查询不能利用 本机DOM querySelectorAll()提供的性能提升 方法。使用时达到最佳性能:输入选择 元素,首先使用纯CSS选择器选择元素,然后 使用.filter(“:input”)

在1.7.2源代码中,输入过滤器针对节点名测试正则表达式:

input: function( elem ) {
            return (/input|select|textarea|button/i).test( elem.nodeName );
},
$(“输入”)
选择器将仅选择输入类型的元素

$(“:input”)
选择器将捕获所有输入元素(如textarea、select、input等)

有关更多信息,请访问jQuery官方文档中关于
:input
选择器的网址:


一个是专用选择器,另一个是通用选择器。这很有意义,谢谢!而且类型引号是完全可选的?老实说,我从来没有将
[type=]
:input
一起使用过,因为如果我在寻找一个特定的类型,那么首先使用
:input
获取所有类型似乎是一条漫长的路。对于纯CSS选择器,我的理解是引号是标准的,但浏览器是宽容的。您可以使用/不使用此处快速测试它,因此$(“:checked”)会给出复选框。。这也是jquery的扩展吗?@David Ruttka:“浏览器宽容”只适用于HTML,也适用于“怪癖”模式下的CSS。该语句不适用于标准模式下的CSS。引号在某些情况下可以合法地省略。我们可以举一个
的例子,首先使用纯CSS选择器选择元素,然后使用.filter(“:input”)。