单击div中的链接触发div' s onclick

时间:2016-05-16 14:12:09

标签: javascript jquery html css event-handling

我有这个简单的问题:一个包含链接的div,并且div定义了一个onclick函数。但是,当我点击链接时,我只想关注链接,而不是触发包含div的功能。

Fiddle

HTML

<div>
  <a href="http://www.google.com" target="_blank">Google</a>
</div>

JQuery的

$('div').click(function() {
  alert("test");
});

CSS

div {
  height: 100px;
  width: 200px;
  border: 1px solid red
}

所以在这里,当我点击div时,会显示一条警告:没关系。点击链接后,我不希望显示警报。

如何避免这种情况?

1 个答案:

答案 0 :(得分:8)

您可以将event.stopImmediatePropagation();应用于该链接。根据API,这可以防止其他处理程序被执行,并防止事件冒泡DOM树(https://api.jquery.com/event.stopimmediatepropagation/)。

这是小提琴:http://jsfiddle.net/dxrdrqrc/