首页 > 开发 > JS > 正文

JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法

2024-05-06 16:44:50
字体:
来源:转载
供稿:网友

本文实例讲述了JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法。分享给大家供大家参考,具体如下:

最近项目中遇到了在同一DOM元素上需要添加 onclick 和 ondblclick 2个事件,如果按照正常的方式添加处理,结果发现只会执行 onclick,而不会执行 ondblclick;这时我们需要对2个事件的处理函数稍作处理就可以实现2个事件并存了,代码如下:

<script type="text/javascript"> var clickTimer = null; function _click(){   if(clickTimer) {     window.clearTimeout(clickTimer);     clickTimer = null;   }   clickTimer = window.setTimeout(function(){      // your click process code here      alert("你单击了我");   }, 300); }  function _dblclick(){   if(clickTimer) {     window.clearTimeout(clickTimer);     clickTimer = null;   }   // your click process code here   alert("你双击了我"); }</script><button onclick="_click();" ondblclick="_dblclick();">单击或双击我</button>

处理思想就是:利用定时器延迟执行onclick事件,这样在双击过程中会取消中途触发的单击事件。


注:相关教程知识阅读请移步到JavaScript/Ajax教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表