Twitter-bootstrap崩溃插件 - 如何启用多个"组"要开吗?

时间:2013-03-29 02:16:07

标签: twitter-bootstrap

我正在使用崩溃插件,我想知道如何让多个组同时打开。在他们的演示页面中:

http://twitter.github.com/bootstrap/javascript.html#collapse

在给定时间内只允许一个人开放。我想这是手风琴的预期行为,但我怎样才能改变它以便打开一个小组不会使其他小组崩溃?

3 个答案:

答案 0 :(得分:121)

只是不要使用data-parent属性:

<div class="accordion" id="accordion2">
  <div class="accordion-group">
    <div class="accordion-heading">
      <a class="accordion-toggle" data-toggle="collapse" href="#collapseOne">
        Collapsible Group Item #1
      </a>

    </div>
    <div id="collapseOne" class="accordion-body collapse in">
      <div class="accordion-inner">Item 1 Body</div>
    </div>
  </div>
  <div class="accordion-group">
    <div class="accordion-heading"> 
      <a class="accordion-toggle" data-toggle="collapse" href="#collapseTwo">
        Collapsible Group Item #2
      </a>
    </div>
    <div id="collapseTwo" class="accordion-body collapse">
      <div class="accordion-inner">Item 2 Body</div>
    </div>
  </div>
</div>

http://jsfiddle.net/HJf6j/2/

答案 1 :(得分:11)

对于依赖于扩展/折叠每个面板并在每个页面上允许多个手风琴的解决方案。

如果您的所有手风琴和乐队都有独特的ID,那么您可以在页面上拥有任意数量的手风琴

每支手风琴都需要一个唯一的ID:

<div class="panel-group" id="accordion1" role="tablist" aria-multiselectable="true">

每个标题都需要一个唯一的ID

<div class="panel-heading" role="tab" id="headingOne">  

每个正文都需要一个唯一的ID,如果适用,还需要引用要使用的标题

<div id="collapseOne" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">

关于JSFiddle的示例:http://jsfiddle.net/qnhd7Lu3/3/

答案 2 :(得分:0)

$('#multipleOPened').on('click', function() {
  if($(this).is(':checked')) {
    $('#accordion .collapse').removeAttr('data-parent');
  } else {
    $('#accordion .collapse').attr('data-parent','#accordion');
  }
});

在JSFiddle上使用bootstrap 4的示例: https://jsfiddle.net/tw1j7Lf3/7/