2012-12-22 65 views
2

我有一個相當簡單的jQuery切換在這裏工作:http://jsfiddle.net/yVa3U/1/ - 但我不知道如何獲得活動div切換下一個div被點擊時切換。jQuery在多個div之間打開/關閉

有關如何做到這一點的任何建議?

感謝

$(document).ready(function() { 

    $('.answer').hide(); 

    $(".toggle").click(function(){ 

     $("div[rel='profile_" + $(this).attr("profile") + "']").toggle(400); 
}); 

});​ 

回答

4

您應該添加

$(".answer").not($(this).next()).hide(400); 

調用toggle()功能

旁註

  1. 之前,你可以行$("div[rel='profile_" + $(this).attr("profile") + "']").toggle(400);改變 $(this).next().toggle(400);
  2. 而不是使用屬性profile你最好使用data屬性

Demo

1

您需要hideall答案上點擊exceptcurrent答案,你能做到這樣,

Live Demo

$(document).ready(function() { 
    $('.answer').hide(); 
    $(".toggle").click(function() { 
     currentAnswerDiv = $("div[rel='profile_" + $(this).attr("profile") + "']"); 
     $('.answer').not(currentAnswerDiv).hide(); 
     currentAnswerDiv.toggle(400); 
    }); 
});​ 
+0

如果同時點擊兩次相同的切換元素,則不會切換活動答案 – charlietfl

+0

@charlietfl,我已更新我的答案,謝謝指出。 – Adil