我想捕获所有点击事件,除非它们是在a-tag上完成的。如何定位除jQuery和CSS之外的所有标签:not()选择器
我建立这个小提琴显示我的问题: http://jsfiddle.net/vwyFg/7/
为什么这不是工作?
$('.three').on('click',':not(a)',function(e){
$('body').append('<b>i did not click on a a-tag!</b><br>');
e.preventDefault();
e.stopPropagation();
});
HTML:
<div class="wrap three">
<div class="wrap two">
<div class="wrap one">
<a href="javascript:$('body').append('i DID click on a a-tag!!<br>');;return false;">klick me!</a>
</div>
</div>
</div>
$上( '点击 '(' 三')。 ':不(一)' 基本上你是在 'A' 标签跳过click事件,但不停止传播到会触发点击事件的父元素 –
'e.preventDefault'确实阻止了href被执行。 但我仍然不明白:为什么不能用':not(...)'过滤传入事件? 没有:它不工作,因为我期望: http://jsfiddle.net/vwyFg/18/ – Benjamin