javascript js 完美解决 click 与 dblclick 冲突,并且不会导致click延迟


示例代码:

marker.addEventListener("click", function(){  
    if (!window.markerClicked) {  
        window.markerClicked = true;  
    } else {  
        window.markerClicked = false;  
        return;  
    }  
    setTimeout(function () {  
        window.markerClicked = false;  
    }, 500);  
  
    //todo: 下面写业务代码  
}); 
View Code

上面提供一种思路,双击时只触发一次click,这种思路的优点是,click事件不会延迟执行。

如果需要dblclick时不触发click,请改写代码,但dblclick在click之后,所以这种需求click的延迟是无法避免的。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM