【发布时间】:2013-09-09 13:45:17
【问题描述】:
有没有一个简单的解决方案,没有 jquery,在 HTML 标记中,可以调用 ondblclick 而不会导致 onclick 也发生?
这总是关闭窗口,尽管它应该只显示警报:
<a href="#" ondblclick="alert('dbl')" onclick="window.close();">X</a>
(它仅适用于 javascript 弹出窗口,因为您无法使用 window.close(); 关闭主窗口)
【问题讨论】:
-
如果您不需要关闭窗口,请单击返回 false。否则,您需要一个函数来跟踪在执行绑定到它们的函数之前发生了多少次点击
-
这是最好的主意:stackoverflow.com/questions/1546040/… -- tl;dr - 为单击设置一个较短的超时时间,这样它就不会劫持您的 dblclick
-
如果不使用超时来捕获单击,这项工作是否有效?因为,我不想仅仅因为这一个按钮就改变整个网站的行为。
-
别这么想……无论如何,onclick 都会触发
-
来自 jQuery 文档但相关:“将处理程序绑定到同一元素的 click 和 dblclick 事件是不可取的。触发的事件顺序因浏览器而异,有些会接收两个点击事件在 dblclick 和其他只有一个之前。双击灵敏度(被检测为双击的两次单击之间的最大时间)可能因操作系统和浏览器而异,并且通常是用户可配置的。"
标签: javascript html