jQuery:优先考虑内部点击

时间:2010-06-18 17:46:44

标签: jquery click event-propagation

我有一个内部有一些链接的大div,我想在内部也有大的div可点击AND链接,我这样做了:

html :

<div class="clickable">
  some text...
  <a href="myurl1">Link 1</a>
  <a href="myurl2">Link 2</a>
  some text...
</div>

jquery :

$('.clickable').click(function() {
   alert('Hello');
});

如果我点击可点击div中的链接,我首先得到'Hello'警告,然后加载新页面:是否可以让锚点工作而不触发外部div点击处理程序?

1 个答案:

答案 0 :(得分:4)

添加此代码:

$('a').click(function(event) {
    event.stopPropagation();
});

您可以在此处看到它:http://jsfiddle.net/wPymp/

此代码以一种简单的方式工作:.event.stopPropagation()确保事件不会在DOM上向上传播并触发祖先元素上的处理程序。