当所有手风琴的窗格都折叠时(使用Twitter Bootstrap),将类添加到accordion的div包装器中

时间:2016-06-01 01:57:36

标签: jquery twitter-bootstrap

我使用Twitter Bootstrap在我的网站上实现了手风琴效果,如http://getbootstrap.com/javascript/#collapse-example-accordion

切换面板打开和关闭似乎没有为任何父元素添加类,只有.panel标题和.panel-折叠......

我想让它在所有手风琴的面板关闭/折叠时向父元素添加一个类(文档示例中的div.bs-example)。

Bootstrap是否可以选择这样做?

如果没有,似乎这不会太难实现......

  • 点击/折叠打开的.panel-headingclass="all-closed"添加到父元素
  • 点击/打开未打开的.panel-heading删除"all-closed"课程(如果存在)

但也许Bootstrap可以选择吗?或者也许某人有一些jQuery示例让我朝着正确的方向前进?

1 个答案:

答案 0 :(得分:0)

我最终得到了一些几乎可以工作的janky代码......刚刚发现我需要使用.on方法才能让它真正起作用。

我的解决方案看起来像这样:

$('.panel-group').on('click', 'a[data-toggle="collapse"]:not(".collapsed")', function() {
  $('.panel-group').addClass('allPanesClosed');
});
$('.panel-group').on('click', 'a[data-toggle="collapse"].collapsed', function() {                     
  $('.panel-group').removeClass('allPanesClosed');
});