2009-10-21 31 views
1

分配有元素多類我需要添加和元素刪除類具有多類的類值:獲取使用jQuery

這是HTML:

<div class="heading"> more html code here </div> 

我想補充類和獲得增加的類的價值。 我可以這樣做嗎?如果不是,如何添加或刪除新班級?

if ($(".heading").attr('class') == 'hidden') then $(".heading").removeClass('hidden'); 
else $(".heading").addClass('hidden'); 

基本上我要做的是切換隱藏/顯示。我不想使用切換功能,因爲它在桌面上弄亂了。

回答

5

您知道嗎toggleClass()

$('.heading').toggleClass('hidden'); 

這應該讓你做你想做的事情,甚至不需要知道當前類是什麼。一般來說,如果您想檢查可能具有多個類的元素上的特定類,請使用hasClass()而不是attr('class')

+0

它解決了一半的問題。另一個問題是獲取類的值來檢查是否添加了「隱藏」類。請注意,當添加'隱藏'類id時,div有兩個聲明的類,並使用.attr('class')檢查它不起作用。如果($(「。heading」)。attr('class')=='hidden'); - >這不起作用。 我不想操縱CSS中隱藏的類。 – kratz 2009-10-21 22:59:53

+0

我忽略了你的最後一段......謝謝。有用。 – kratz 2009-10-21 23:10:11

+0

不客氣!爲什麼不接受答案? – 2009-10-21 23:22:07

1

如果該類不用於隱藏和顯示元素之外的其他內容,則可以使用jQuery's toggle method來顯示和隱藏元素。

$('.heading').toggle(); 
+0

我有興趣瞭解如何檢查某個元素(具有多個類聲明)是否有特定的類。 – kratz 2009-10-21 23:07:53