2

我有一个大 div,里面有一些链接,我也想里面有大 div 可点击和链接,我这样做了:

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 点击处理程序的情况下让锚点工作?

4

1 回答 1

4

添加此代码:

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

你可以看到它在这里工作:http: //jsfiddle.net/wPymp/

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

于 2010-06-18T17:48:42.373 回答