我试图在mousedown上的一个按钮上执行2种不同的功能-向上事件。
但是它不起作用,因为我无法检测到mousedown事件的时间。

var flag;
$("#ClikerButton").mousedown(function(e){
    //if mouse pressed more than 2 sec, then
    // do func1 and set flag = true;
         //else do nothing
}).mouseup(function(e){
//if flag == true, do nothing,
//else do func2;
});

最佳答案

您可以使用:

$(window).mousedown(function(e) {
    clearTimeout(this.downTimer);
    this.downTimer = setTimeout(function() {
        alert('mousedown > 2 sec');
    }, 2000);
}).mouseup(function(e) {
    clearTimeout(this.downTimer);
});​


小提琴:http://jsfiddle.net/simevidas/Pe9sq/2/

参考:Detecting time on mousedown event

关于jquery - 如何在jquery的mousedown事件期间计算时间?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10409062/

10-12 01:04