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

chi*_*apa 6 html javascript css jquery event-handling

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

小提琴

HTML

<div>
  <a href="http://www.google.com" target="_blank">Google</a>
</div>
Run Code Online (Sandbox Code Playgroud)

JQuery的

$('div').click(function() {
  alert("test");
});
Run Code Online (Sandbox Code Playgroud)

CSS

div {
  height: 100px;
  width: 200px;
  border: 1px solid red
}
Run Code Online (Sandbox Code Playgroud)

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

怎么避免这个?

Ger*_*ado 8

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

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