2012-06-20 72 views
1

我有一個問題在做toggleClass它似乎沒有正常工作。圖像應該在showhide之間變化。它不會改變對hide,但沒有回如何在jQuery中的2個類之間切換?

這裏是我example和一些代碼:

<div class="top_menu_hidden" style="display: none; ">testing</div> 
<div class="show_menu"></div> 

$('.show_menu').on('click', function(){ 
     $('.top_menu_hidden').stop().slideToggle('normal', function(){ 
      $(".show_menu").toggleClass("hide_menu show_menu"); 
     }); 
});​ 

.show_menu{ 
    background: url("http://placehold.it/150&text=show") no-repeat scroll 0 0 transparent; 
    height: 150px; 
    width: 150px; 
} 
.hide_menu{ 
    background: url("http://placehold.it/150&text=hide") no-repeat scroll 0 0 transparent; 
    height: 150px; 
    width: 150px; 
} 

什麼想法?

感謝

回答

5
$(".show_menu, .hide_menu").toggleClass("hide_menu show_menu"); 

DEMO

的完整代碼

$('.show_menu').on('click', function() { 
    $('.top_menu_hidden').stop().slideToggle('normal', function() { 
     $(".show_menu, .hide_menu").toggleClass("hide_menu show_menu"); 
    }); 
}); 
+5

你會停止複製答案嗎?如果你認爲自己更好,寫下來,如果不這樣做。不要寫下你的答案,而要從其他答案中複製餘下的答案!這是我第三次告訴你。 – gdoron

+0

@gdoron我是否錯過了什麼?我在這篇文章和你的文章之間看不到一絲曖昧。 – Dutchie432

+0

@ Dutchie432。編輯...這很煩人。 – gdoron

4

有一個切換功能,它會爲你開箱:

$(".show_menu").toggle(); 

toggle文檔:

描述:顯示或隱藏匹配元素。

+0

好點。當然,這隻適用於類只能指示可見性的情況。 – Dutchie432

+0

@ Dutchie432。當然codecodedradox複製它...他一直這樣做! – gdoron

+0

@ Dutchie432。你有超過10K,所以你可以[看到這個](http://stackoverflow.com/a/11048059/601179)。這只是一個例子。 – gdoron