高效点击并在jquery中双击

neo*_*Dev 5 jquery double-click

这段代码的目的是创建一个高性能clickdouble click动作,
但它实际上非常糟糕......它的性能不是很高,所以我想知道更好的方法来做到这一点

通过这种方式,我完全失去了单击的敏感性,现在它只是延迟了,

并且双击不是很精彩..

var DELAY = 150, clicks = 0, timer = null;
$(function(){
    $('button').on("click", function(e){
        clicks++;
        if(clicks === 1) {
            timer = setTimeout(function() {
                $('button').html("Single Click");
                clicks = 0;
            }, DELAY);
        } else {
            clearTimeout(timer);
            $('button').html("Double Click");
            clicks = 0;
        }
    })
    .on("dblclick", function(e){
        e.preventDefault();
    });
});
Run Code Online (Sandbox Code Playgroud)
button {
    padding: 10px;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button>click Me</button>
Run Code Online (Sandbox Code Playgroud)

Kid*_*lly 0

你所拥有的很棒,我想说,就逻辑而言,没有真正的方法可以改进它。唯一的办法就是加长,delay这样更容易接近。老年人有时点击鼠标速度较慢...:P

您的延迟: http: //jsfiddle.net/0928paqh/1/

较长的延迟: http: //jsfiddle.net/0928paqh/2/

对于速度较慢的用户来说足够长,但又不足以让任何人感到烦恼。