2016-08-08 88 views
0

我试图让我的手风琴折叠点击下一个标签,我有问题。我相信代码是正确的,标签打开。但如果我点击标签2选项卡1仍然打开。jquery手风琴折叠新标签打开

如果选项卡打开,箭头也不会朝下。

HTML

<ul class="aside-nav d-all grey-border "> 
      <li class="aside-open-close active"> 
       <a class="aside-opener" href="#">tab1</a> 
       <div class="slide"> 
        content 
       </div> 
      </li> 
      <li class="aside-open-close "> 
       <a class="aside-opener" href="#">tab2</a> 
       <div class="slide"> 
        content 
       </div> 
      </li> 
      <li class="aside-open-close "> 
       <a class="aside-opener" href="#">tab3</a> 
       <div class="slide"> 
        content 
       </div> 
      </li> 
     </ul> 

JQUERY

// open-close init 
function initOpenClose() { 
    jQuery('.open-close, .aside-open-close').openClose({ 
     activeClass: 'active', 
     opener: '.opener, .aside-opener', 
     slider: '.slide', 
     animSpeed: 400, 
     effect: 'slide' 
    }); 
    jQuery('.nav').openClose({ 
     activeClass: 'active', 
     opener: '.nav-opener', 
     slider: '.nav-slide', 
     animSpeed: 400, 
     effect: 'slide' 
    }); 

    jQuery('#nav .drop').each(function(){ 
     var holder = jQuery(this); 
     var opener = holder.children('a'); 
     var drop = holder.children('.drop-holder'); 

     opener.on('click', function(e){ 
      e.preventDefault(); 
      holder.toggleClass('hover'); 
     }); 

     jQuery('body').on('click', function(e){ 
      if(holder.hasClass('hover') && !jQuery(e.target).closest(holder).length) holder.removeClass('hover') 
     }); 
    }); 
} 
+0

你在哪里设置手风琴?你错过了代码部分 – Luca

回答

0

如果您设置[UL]标签作为手风琴正常工作

添加此

$('.aside-nav').accordion(); 

Working fiddle

+0

嗯只是让所有的标签永久开放 –

+0

你试过我的小提琴吗?这个https://jsfiddle.net/berets/hpom8jek/1/?! 如果你点击其他标签前一个总是关闭 – Luca

+0

是的,我有,似乎工作完美,即时通讯看看,如果我错过了一个jQuery的参考,当我尝试通过我的本地答案,它保持所有标签打开,一旦我得到它工作不正常接受您的答案 –