2012-02-01 40 views

回答

3

這裏有兩種方法可以做到這一些優勢:

addClass("disabled")優點:

  1. 如果你有你的對象上的其他類,addClass()會保留那些同時增加了新的類。我幾乎總是希望保留使用其他類爲CSS樣式或常見選擇器原因的能力,因此addClass()可以添加disabled類,而不會因爲其他原因而干擾同一對象上的其他類。
  2. 該代碼讀起來更容易理解,因爲名稱addClass()告訴某人正在閱讀代碼,確切地知道它在做什麼。
  3. addClass()在類名稱之間自動管理分隔符,因此當您有多個類名時,如果您只是獲取當前類名並通過字符串操作自行添加,就不會再出現分隔符累積。

attr("class") = "disabled"優點:

  1. 如果您只想在對象上一個類名,這個聲明保證,你將有隻有一個類名。
  2. 一個類的直接分配可能比addClass()更快,它必須先檢查有什麼,然後向jQuery用正則表達式匹配所做的預先存在的類添加一個類。最大速度實際上是與element.className =「disabled」(根本沒有jQuery)。
3

我會去addClass,它更容易閱讀,如果你的編輯器支持代碼完成,也更快地打字。

+0

我不知道是否能夠更快地輸入一些東西意味着它的更好的做法:P – Samjus 2012-02-01 21:32:06

+0

好吧。你贏了:P – Samjus 2012-02-01 21:33:31

13

兩者不一樣。使用attr將替換整個屬性。 addClass將把類添加到現有的類。

顧名思義addClass是爲了這個特定的目的,所以我會使用它。

1

你最好去的addClass()你會節省時間和寫作,並獲得更多的效率。

相關問題