保持手风琴菜单的所有标签都关闭

时间:2015-04-14 13:49:34

标签: javascript jquery html menu accordion

我的Archives中有一个简单的手风琴菜单,第一个菜单项总是打开但是如何修改JS以便所有菜单项在页面加载时关闭?网址为http://helloarchie.blue/archives

JS

function openFirstPanel(){
$('.accordion > dt:first-child').next().addClass('active').slideDown();
}

(function($) {

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

openFirstPanel();

$('.accordion > dt > a').click(function() {
  $this = $(this);
  $target =  $this.parent().next();


  if($target.hasClass('active')){
    $target.removeClass('active').slideUp(); 
  }else{
    allPanels.removeClass('active').slideUp();
    $target.addClass('active').slideDown();
  }

return false;
});

2 个答案:

答案 0 :(得分:2)

删除openFirstPanel()函数和函数调用。

所以你明白了:

(function($) {

    var allPanels = $('.accordion > dd').hide();
    $('.accordion > dt > a').click(function() {
        $this = $(this);
        $target =  $this.parent().next();
        if($target.hasClass('active')){
            $target.removeClass('active').slideUp(); 
        }else{
             allPanels.removeClass('active').slideUp();
             $target.addClass('active').slideDown();
         }

    return false;
});

答案 1 :(得分:-2)

  

将active设置为false将折叠所有面板。这要求可折叠选项为真。   http://api.jqueryui.com/accordion/

$('.accordion').accordion({
    active: false,
    collapsible: true            
});