折叠Jquery手风琴

折叠Jquery手风琴,jquery,accordion,jquery-ui-accordion,collapse,Jquery,Accordion,Jquery Ui Accordion,Collapse,我将以下脚本用于jquery手风琴: (function($) { var allPanels = $('.accordion > dd').hide(); $('.accordion > dt > a').click(function() { allPanels.slideUp(); $(this).parent().next().slideDown(); return false; }); 然而,当我点击一个标题来关闭它时,它会关闭

我将以下脚本用于jquery手风琴:

(function($) {

  var allPanels = $('.accordion > dd').hide();

  $('.accordion > dt > a').click(function() {
    allPanels.slideUp();
    $(this).parent().next().slideDown();
    return false;
  });
然而,当我点击一个标题来关闭它时,它会关闭,然后立即再次打开。可以在此处看到脚本正在工作:


所以我的问题是,当我再次单击活动面板时,如何使其关闭,而不是立即关闭和打开?

它会立即再次打开,因为这是您的代码要执行的操作

allPanels.slideUp(); // Hide the panel
$(this).parent().next().slideDown(); //Show it again
将这些线路替换为

allPanels.not(this).slideUp(); //hide only ones that aint this one.
$(this).parent().next().slideToggle(); //show or hide based on current display

很好,但问题是什么?