有一組類似元件與similiar標識jQuery選擇使用ID正則表達式或冗餘類
這裏有兩種方法來使用JQuery以選擇它們:
ID +正則表達式(例如:How can I select an element by ID with jQuery using regex?)
Add ar edundant類的所有元素,然後選擇類
這裏是例子:
哪種方法更好? ID+Regex
更耗時?
有一組類似元件與similiar標識jQuery選擇使用ID正則表達式或冗餘類
這裏有兩種方法來使用JQuery以選擇它們:
ID +正則表達式(例如:How can I select an element by ID with jQuery using regex?)
Add ar edundant類的所有元素,然後選擇類
這裏是例子:
哪種方法更好? ID+Regex
更耗時?
使用類比選擇器的性能會更好。
在DOM中,具有更多特異性的東西會更好。有未使用的類不會挫敗渲染引擎。
最後,使用特定的類增加了代碼的可讀性。
這是錯誤的,在這種情況下類是選擇器,並且特性與JavaScript性能無關。無論選擇器是否可以由本地方法直接使用,或者在querySelector中使用都很重要,並且在較舊的瀏覽器中,由於IE直到最近才支持getElementsByClassName或querySelectorAll(IE8 for QSA),所以類很適合性能。 – adeneo
你說得對。但是,DOM API可以通過'getElementsByClassName'和'querySelectorAll'查詢更簡單的時間嗎? – beautifulcoder
不,不是,但在IE7及以下根本沒有選擇類,所以jQuery必須遍歷DOM中的所有元素並檢查每個元素的className,因此在這些瀏覽器中,任何事情都會更快,但是如果查詢選擇器不受支持,則通過屬性定位確實有點相同,所以它將是同樣的事情。 – adeneo
RegEx不是本機支持的選擇器。因此,如果您使用類將相似的元素分組,則速度會更快。 –
這真是一個性能瓶頸嗎? –
@ t.niese當然,但這個班是**冗餘**。 –