Mosueup Hold and Press活动

时间:2017-01-15 06:03:05

标签: javascript jquery mouseevent

我正在尝试使用jQuery

中的鼠标按下事件来检测是否按下了按钮
$("element").mouseup(function(event){
       callMe();
});

function callMe(){
     alert("called");
}

任何帮助都会很棒。

1 个答案:

答案 0 :(得分:1)

我相信你可以通过结合使用mousedown和mouseup事件来检测长按。它基本上计算用户按住按钮的时间。

以下是您可以尝试的示例代码。

  var longpress = 2000; // duration you consider a long press
  var startTime;

  $("#button").on('mousedown', function(e) {
    startTime = new Date().getTime();
  });

  $("#button").on('mouseleave', function(e) {
    startTime = 0;
  });

  $("#button").on('mouseup', function(e) {
    if (new Date().getTime() >= (startTime + longpress)) {
      alert('long press!');
    } else {
      alert('short press!');
    }
  });