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的延迟是无法避免的。

原文地址:https://www.cnblogs.com/s0611163/p/9294467.html