我想捕獲所有點擊事件,除非它們是在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