如何在一个元素上同时使用 onclick 和 ondblclick?
- 论坛
- 如何在一个元素上同时使用 onclick 和 ondblclick?
23 浏览
如何在一个元素上同时使用 onclick 和 ondblclick?
我在页面上有一个元素,我需要附加onclick和ondblclick事件处理程序。当发生单击时,它应该执行与双击不同的操作。当我开始尝试使其工作时,我的头就开始晕了。显然,当您双击时,onclick将始终触发。所以我尝试使用基于超时的结构,如下所示...
window.onload = function() { var timer; var el = document.getElementById('testButton'); el.onclick = function() { timer = setTimeout(function() { alert('Single'); }, 150); } el.ondblclick = function() { clearTimeout(timer); alert('Double'); } }
但是我得到了不一致的结果(在IE8中使用)。它有时会正常工作,但有时我会收到两次"Single"的警报。
有人以前做过吗?有没有更有效的方法?