2013-12-13 131 views
-1

针对常见问题的网站我的用户这个小打开的问题jQuery的手风琴打开和关闭

var allPanels = $('.accordion > dd').hide(); 
$('.accordion > dt > a').click(function() { 
    allPanels.slideUp(); 
    $(this).parent().next().slideDown(); 
    return false; 
}); 

这工作正常,并且片断如果我点击第二个问题的第一个答案将被隐藏。

它是如何工作的,所以我可以点击第一个问题,再按一下第一个问题就会隐藏第一个答案。

+0

一个的jsfiddle将是巨大的。 –

+0

http://jqueryui.com/accordion/#collapsible当再次点击此手风琴时会关闭。 – ElliotM

回答

0

您可以使用slideToggle根据元素的当前状态切换状态。

$(this).parent().next().slideToggle(); 

你可以这样做:

var allPanels = $('.accordion > dd').hide(); 
$('.accordion > dt > a').click(function() { 
    allPanels.not($(this).parent().next().slideToggle()).slideUp(); 
    return false; 
});