javascript - Bootstrap 可折叠组可以作为 Accordion 或不工作

标签 javascript twitter-bootstrap accordion

我使用 here 中的 Accordion 示例我尝试通过添加 2 个按钮来扩展用户选择的多个或单个面板,这两个按钮使用 jquery 删除属性“data-parent”或再次添加。

这是我的实现 here

所有工作都是这样完成的:

$('#expandSingle').on('click', function () { 
  $('.accordion-toggle').attr('data-parent', '#accordion');
});

$('#expandMulti').on('click', function () { 
  $('.accordion-toggle').removeAttr('data-parent'); 
});

奇怪的事情是,如果我手动(没有jquery),删除“data-parent”并刷新,我得到我想要的结果,面板变得全部可折叠。当我在页面上通过 jquery 执行此操作时,它有奇怪的行为,但不起作用...

请问有什么想法吗?

最佳答案

它不起作用,因为折叠组件已经使用 #accordion 作为 data-parent 进行了初始化。

您可以像这样重新初始化组件并重置数据属性..

$('#expandSingle').on('click', function () { 
  $('.panel-collapse').removeData('bs.collapse');
  $('.panel-collapse').collapse({parent:'#accordion'});
});

$('#expandMulti').on('click', function () { 
  $('.panel-collapse').removeData('bs.collapse');
  $('.panel-collapse').collapse({parent:false});
});

演示:http://bootply.com/dSZVY2hphO

关于javascript - Bootstrap 可折叠组可以作为 Accordion 或不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35727033/

相关文章:

javascript - React Day Picker 仅在第二次单击时更改 "to"状态

JavaScript 或 jQuery : Saving input value into variable which is saved into another variable

javascript - Angular 2 Kendo toOdataString 返回空白字符串

javascript - Bootstrap 导航栏切换按钮不折叠

Jquery Accordion 和厚盒冲突

javascript - 使用 AJAX 加载 Google Maps API...但多个实例仅加载一次

html - col-xs-0 Bootstrap 不工作

css - 是否可以将一行css编码作为变量传递给less?

javascript - 列表项上的单击事件没有任何响应或控制台输出

javascript - jQuery Accordion 打开折叠