. 有多个 div 用于与一些没有 ID 的类折叠:
<div class="spoiler">
<div class="spoiler-btn">spoiler1</div>
<div class="spoiler-body collapse">spoiler 1</div>
</div>
<div class="spoiler">
<div class="spoiler-btn">spoiler2</div>
<div class="spoiler-body collapse">spoiler 2</div>
</div>
<div class="spoiler">
<div class="spoiler-btn">spoiler3</div>
<div class="spoiler-body collapse">spoiler 3</div>
</div>
使用 .spoiler-btn 插件中的 data-attribute data-toggle="collapse" data-target=".spoiler-body" 折叠所有 div。但只需要在父级 .spoiler 内折叠
更新
我为我找到了正确的方法:
$.fn.ready(function() {
// Spoiler
$(document).on('click', '.spoiler-btn', function (e) {
e.preventDefault()
$(this).parent().children('.spoiler-body').collapse('toggle')
});
});
Bootsprap collapse.js 使用类“collapse”。必须添加此类。
$(document).on('click', '.spoiler-btn', function (){...})
- 快速的方式听点击。在这种情况下可能不值得额外的代码,因为我们必须创建一个闭包来保存它。click 事件很少发生(或者如果用户选择不与手风琴交互,则永远不会发生)。
演示:http: //jsfiddle.net/vralle/qX4Pt/
谢谢