2011-03-28 60 views
6

假設DOM中的每一個元素都有自己獨特的類名:最佳實踐:用jQuery選擇id或class?

  1. 是更好的做法在使用jQuery的DOM元素選擇時使用的ID與類名?

  2. 在jQuery中使用一個而不是性能優勢?

我已經告訴通過ID而不是按類是更快,通常更好的做法讓傳統的DOM元素,但它適用於jQuery的呢?

非常感謝提前!

+1

如果沒有兩個對象共享一個類,您是否正確使用類? – sarnold 2011-03-28 07:04:02

+0

我同意sarnold,擁有獨特的類名是毫無意義的。 – 2011-03-28 07:07:57

+0

那麼我也使用這些類爲CSS目的;不只是爲了選擇。 – DondeEstaMiCulo 2011-03-28 07:10:58

回答

5

jQuery只是利用瀏覽器功能。在較舊的瀏覽器上(IE < 9),沒有getElementsByClassName功能,但實際上每個瀏覽器都支持getElementById。在這些瀏覽器上,jQuery必須遍歷整個樹並查找具有給定類名的所有元素。因此,使用ID會更快。

但是,請記住,id必須是唯一的,即不能有兩個具有相同ID的元素。這通常不可取,因爲組件可能在同一頁面的不同上下文中使用。獨佔使用ID會阻止這種情況。

1

通過ID選擇仍比jquery中的類名更快。