我想知道爲什麼人們似乎喜歡:input
而不是input
作爲jQuery選擇器?基本上,這兩條線似乎做同樣的事情:輸入與輸入在jQuery
$('input:first').focus()
$(':input:first').focus()
但第二個版本是更廣泛的使用,我沒有找到原因。而且,根據此基準,:input
選擇器看起來較慢:http://jsperf.com/input-vs-input/2
我想知道爲什麼人們似乎喜歡:input
而不是input
作爲jQuery選擇器?基本上,這兩條線似乎做同樣的事情:輸入與輸入在jQuery
$('input:first').focus()
$(':input:first').focus()
但第二個版本是更廣泛的使用,我沒有找到原因。而且,根據此基準,:input
選擇器看起來較慢:http://jsperf.com/input-vs-input/2
:input
是由jQuery的,其包括<buttons>
,<textarea>
,e.t.c
input
是嚴格匹配<input>
一個標籤匹配僞選擇器。
這額外的備註:input
是資料:
因爲:輸入一個jQuery擴展和不CSS規範的一部分,使用
:input
不能利用由本地DOMquerySelectorAll()
方法提供的性能提升查詢。要在使用:input
選擇元素時實現最佳性能,請首先使用純CSS選擇器選擇元素,然後使用.filter(":input")
。
input
只是輸入元素選擇器。 :input
還選擇textarea
,select
和button
(表單控件)。
這不一定是偏好問題,因爲實際上他們做的事情有些不同。
:input
選擇所有輸入,textarea,選擇和按鈕元素,而input
只是選擇帶有輸入標籤的元素。