【发布时间】:2015-12-30 21:25:37
【问题描述】:
以下代码取消整个页面的左键和中键:
<script> $(document).on('click',false) </script>
<a href="http://example.com">link</a>
此其他代码仅使用 jquery 委托事件来取消对 A 元素的点击:
<script> $(document).on('click','a',false) </script>
<a href="http://example.com">link</a>
左键点击效果很好,但是如果你中键点击链接,会打开一个新标签,这意味着事件没有被取消。
为什么使用第二个代码,中间点击没有取消?
【问题讨论】:
-
click根据定义是左按钮。你可以使用mousedown -
@dandavis,我第一次听说。记录在哪里?
-
我不知道它在哪里记录,但它一直是这样......
-
@dandavis,那为什么第一个代码可以取消中间点击就好了?
标签: javascript jquery html dom-events event-propagation