2015-03-31 59 views
2

我有我的頁面元素的負載。如何動態追加和刪除多個類名的文本?

 <input class="userInput" type="text" /> 
     <img src="myPic.png" class="userImage" id="userImage" /> 
     <input class="firstNameInput someOtherClass" type="text" /> 
     <input class="lastNameInput" type="text" /> 
     ...etc... 

不過,我需要編寫一個函數來動態改變類,以使其在「Red」結束。例如「userInputRed」,「userImageRed」。然後再返回它們的另一個函數。

我可以選擇它們都很容易夠...

$('.userInput','.userImage'....) 

..但我不知道如何改變他們現有的課程,而無需編寫冗長的代碼添加對於每個元素刪除類的獨立。

例如$('.userInput').removeClass('userInput').addClass('userInputRed')

有沒有辦法做到這一點使用JQuery沒有太多的重複?

因此,像這樣......

$('.userInput','.userImage'....).appendToClassName('red'); 
$('.userInputRed','.userImageRed'....).removeFromClassName('red'); 
+0

添加第二個類不能消除第一類針對它的CSS。因爲第二個自動在css中覆蓋第一個類'$('。userInput')。addClass('userInputRed')' – 2015-03-31 14:58:46

+0

我感覺你應該爲所有'input'元素分配相同的類,並給每個元素一個不同的'id'或'name'屬性。 – Phylogenesis 2015-03-31 15:00:15

+0

是的,它的工作原理。只是它涉及很多重複。我認爲可能有更好的方法。 – Urbycoz 2015-03-31 15:00:20

回答

2

您可以切換.red類與.userInput.red

+0

謝謝。現在明顯地說出來了。 – Urbycoz 2015-03-31 15:14:19