我想知道为什么人们似乎更喜欢:input作为inputjQuery 选择器?基本上,这两行似乎做同样的事情:
$('input:first').focus()
$(':input:first').focus()
但是第二个版本使用更广泛,我不知道为什么。此外,:input根据这个基准,选择器似乎更慢:http: //jsperf.com/input-vs-input/2
我想知道为什么人们似乎更喜欢:input作为inputjQuery 选择器?基本上,这两行似乎做同样的事情:
$('input:first').focus()
$(':input:first').focus()
但是第二个版本使用更广泛,我不知道为什么。此外,:input根据这个基准,选择器似乎更慢:http: //jsperf.com/input-vs-input/2
:input是 jQuery 的伪选择器,包括<buttons>,<textarea>等
input是一个严格匹配的标签匹配<input>。
关于此附加说明提供了:input丰富的信息:
因为 :input 是一个 jQuery 扩展而不是 CSS 规范的一部分,所以使用查询
:input不能利用原生 DOMquerySelectorAll()方法提供的性能提升。要在使用:inputto 选择元素时获得最佳性能,首先使用纯 CSS 选择器选择元素,然后使用.filter(":input").
input只是输入元素选择器。 :input还选择textarea、select和button(表单控件)。
这不一定是偏好问题,因为实际上它们做的事情有些不同。
:input选择所有输入、文本区域、选择和按钮元素,而input只选择带有输入标签的元素。