2012-01-17 149 views
1

我的頁面上有一個常見問題解答區域,其中包含列表中的所有問題,當用戶點擊標題時,帶答案的DIV將展開到視圖中。但是,在關閉答案DIV層時,我遇到了麻煩。發生的兩件事之一...用JQuery切換DIV

這一個將簡單地打開和關閉每個DIV層,因此可以一次打開多個答案。我只想打開一個,當用戶點擊相同的標題或另一個標題時,當前打開的圖層應該摺疊。

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    jQuery(".faq_answer").hide(); 
    jQuery(".faq_heading").click(function() { 
    jQuery(this).next(".faq_answer").slideToggle(500); 
    }); 
}); 
</script> 

這一個會摺疊當另一個標題被點擊時(這是好的)當前打開的任何圖層。但是,當單擊SAME標題時,它會關閉它,然後重新打開它。

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    jQuery(".faq_answer").hide(); 
    jQuery(".faq_heading").click(function() { 
    jQuery(".faq_answer").hide(500); 
    jQuery(this).next(".faq_answer").slideToggle(500); 
    }); 
}); 
</script> 
+1

包裝在一個if語句。如果div已經打開,則什麼也不做。 – 2012-01-17 06:01:03

+0

一些html代碼? – 2012-01-17 06:49:38

回答

1

內的點擊處理程序,而不是這樣的:

jQuery(".faq_answer").hide(500); 

試試這個:

jQuery(".faq_heading").not(this).next(".faq_answer").hide(500);