我有一个折叠面板主体,就像这样(the fiddle,现在有固定的代码):
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title" data-toggle="collapse" href="#collapseOne">
<a href="#">1) collapsing link</a>
<a href="#">2) not collapsing link</a>
</div>
</div>
<div id="collapseOne" class="panel-collapse collapse in">
<div class="panel-body">Anim pariatur cliche ...</div>
</div>
</div>
数据切换在面板标题上设置,因为我想在其上的任何位置单击以打开另一个面板。除了第二个链接。我的目标是禁用第二个链接的折叠行为。实现这一目标的最佳/最简单方法是什么?
重要:我不想仅在第一个链接上设置数据切换。我想在面板上的任何地方单击以触发偶数,除了在第二个链接上。
答案 0 :(得分:21)
您需要为那些您不想触发崩溃事件的元素添加一个类,然后通过javascript停止事件传播。所以......这是正确答案。
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title" data-toggle="collapse" href="#collapseOne">
<a href="#">1) collapsing link</a>
<a href="#" class="no-collapsable">2) not collapsing link</a>
</div>
</div>
<div id="collapseOne" class="panel-collapse collapse in">
<div class="panel-body">Anim pariatur cliche ...</div>
</div>
</div>
像这样停止事件传播:
$('.no-collapsable').on('click', function (e) {
e.stopPropagation();
});