我正在使用bootstrap3的崩溃工具。 http://getbootstrap.com/javascript/#collapse
但是我希望如果全部关闭,第一个div应该再次打开,这样如果全部关闭,就不会有空余空间。
这是我试过的,但这只是一次工作,而且第二次,它没有打开第一次。任何想法为什么?
$(function(){
$('#four').on('click', function () {
var four_class = $('#collapseFour').attr("class");
if(four_class=="panel-collapse in"){
$('#collapseOne').collapse();
}
});
});
我的第四个内容
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a class="accordion-toggle lead" data-toggle="collapse" data-parent="#accordion" href="#collapseFour" id="four">
Locations eintragen
</a>
</h4>
</div>
<div id="collapseFour" class="panel-collapse collapse">
<div class="panel-body">
fourth content
</div>
</div>
</div>
答案 0 :(得分:2)
您需要观看面板关闭时广播的hidden.bs.collapse
事件。
在那里你检查面板的数量是否等于封闭面板的数量,如果是这样,打开第一个面板..
$('#accordion').on('hidden.bs.collapse', function (item) {
// after closing check if any is still open
var self = $(this),
collapsed = self.find('.collapsed'),
all = self.find('.panel-title'),
allClosed = collapsed.length === all.length;
if (allClosed){
setTimeout(function(){
self.find('.panel-collapse').first().collapse('show');
}, 10);
}
})