2013-03-07 61 views
1

我有一些div(title)。當我按下時,讓我們說div1,小標題顯示。而當我按另一個div,可以說div2,然後div1隱藏和div2正在顯示。JQuery if/else with show/hide

我想要的是當我按div1,然後再按div1它隱藏。 你可以在if/else語句中看到我所嘗試過的。

希望有人能幫助我。

$(document).ready(function() 
{ 
    $(".title").click(function() 
    { 
     var $element = $(this); 

     $(".open").removeClass("open"); 
     $('.subtitle').hide(500); 

     $element.toggleClass('open'); 
     $element.children('.subtitle').toggle(500); 

     if($(this).hasClass() == "open") 
     { 
      $element.children(".subtitle").hide(500); 
     } 
    }); 
}); 
+3

你能否顯示相關的HTML代碼? – HerrSerker 2013-03-07 13:40:31

+1

可以在http://jsfiddle.net/ – 2013-03-07 13:41:16

回答

1

$(this).hasClass() == "open"應該$(this).hasClass('open')

if內你不應該顯示字幕,而不是隱藏它的?

+0

上創建演示謝謝,這樣做的工作:) – 2013-03-07 13:57:50

1

切換是在這種情況下的正確方法。

你可能也想看看這個 Visibility/Hidden info.

它涵蓋了如何檢查對CSS的知名度,CSS顯示,以及實際元素的知名度。從那些你可以做任何標準的條件陳述取決於問題的「隱藏」。在某些情況下,有些人可能比別人工作得更好