我使用jsfiddle 68RXP collapse-group
中的示例创建了一个可扩展的div:
HTML:
<div class="span4 collapse-group">
<h2>Heading</h2>
<p class="collapse">Lorem ipsum</p>
<p><a class="btn" href="#">View details »</a></p>
</div>
使用Javascript:
$('.row .btn').on('click', function(e) {
e.preventDefault();
var $this = $(this);
var $collapse = $this.closest('.collapse-group').find('.collapse');
$collapse.collapse('toggle');
});
按下btn
后,p
类会在展开和折叠模式之间切换。
我尝试对递归可折叠div使用相同的概念:
<div class="collapse-group">
<p><a class="btn" href="#">Open outer div »</a></p>
<div class="collapse">
<h2>Outer div title</h2>
<p>Outer div text</p>
<div class="collapse-group">
<p><a class="btn" href="#">Open inner div »</a></p>
<div class="collapse">
<h2>Inner div title</h2>
<p>Inner div text</p>
</div>
</div>
</div>
</div>
与以前相同的js代码,请参阅jsFiddle WdbUe。
第一次打开外部可折叠div时,内部div也会打开。 如何将每个expand
按钮耦合到单个可折叠div?
答案 0 :(得分:4)
我使用data-toggle="collapse" data-target="#some_id"
和每个可折叠div
的不同ID:
<div class="container">
<div class="hero-unit">
<h2>Bootstrap-jQuery collapse example</h2>
<p>Based on <a href="http://jsfiddle.net/Sherbrow/68RXP/">fiddle 68RXP</a></p>
<div class="collapse-group">
<p><a class="btn" data-toggle="collapse" data-target="#demoout">Open outer div »</a></p>
<div class="collapse in" id="demoout">
<h1>Outer div title</h1>
<p>Outer div text</p>
<div class="collapse-group">
<p><a class="btn" data-toggle="collapse" data-target="#demoin">Open inner div »</a></p>
<div class="collapse in" id="demoin">
<h2>Inner div title</h2>
<p>Inner div text</p>
<div class="collapse-group">
<p><a class="btn" data-toggle="collapse" data-target="#demoinin">Open inner div »</a></p>
<div class="collapse in" id="demoinin">
<h3>Inner-inner div title</h3>
<p>Inner-inner div text</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
使用此js
代码:
$(document).ready(function(){
$(".collapse").collapse();
});
工作示例:jsfiddle K63P3
信用:aximay@jsbin。