如果按下按钮10秒钟,按钮功能?

use*_*613 3 javascript jquery

我只是想在用户按下/点击按钮10秒钟时找到执行按钮功能的方法.

正常的按钮功能是:

$( "#target" ).click(function() {
alert( "Handler for .click() called." );
});
Run Code Online (Sandbox Code Playgroud)

那么有没有办法计算从用户按下按钮和KEPT按下的那一刻起的秒数(连续按下而不点击不点击),当秒数达到10时,该功能将执行?

ade*_*neo 5

您需要定时器,在按住鼠标时设置定时器,在释放鼠标时将其清除.

$( "#target" ).on({
    mousedown: function() {
        $(this).data('timer', setTimeout(function() {
              foo();
        }, 60000));
    },
    mouseup: function() {
        clearTimeout( $(this).data('timer') );
    }
});
Run Code Online (Sandbox Code Playgroud)

小提琴