如何从子元素中阻止父元素的属性

时间:2017-06-12 12:30:48

标签: html html5 angular-ui-bootstrap

我有一个div属性 data-toggle = collapse 。这个div包含子元素(标记 - 链接),我希望 a 元素不会引用data-toogle属性。



<div data-toggle="collapse" data-target="#someElement">
  <span>click here to collapse</span>
  <a (click)="anyFunction($event)">open new window</a>
</div>
&#13;
&#13;
&#13;

我不希望单击元素会折叠面板。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

你应该使用stopPropagation()。见下面的例子

  

描述:防止事件冒泡DOM树,防止任何父处理程序被通知事件。

$("a").on("click",function(e) {
   e.stopPropagation()

})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<div data-toggle="collapse" data-target="#someElement">
  <span>click here to collapse</span>
  <a>open new window</a>
</div>
<div id="someElement" class="collapse">
blabla
</div>