2

我正在使用 Javascript 处理 longpress 事件,它在简单的 HTML 页面上使用时可以正常工作,但是当我在 Phonegap/Android 中使用此代码时,它不起作用,代码如下:

$(document).ready(function() {
  debugger;
  var mousedowntime;
  $('#Button1').mousedown(function() {
    var d = new Date();
    mousedowntime = d.getTime();
    //alert('Handler for .mousedown() called.');
    //start a timer
  });
  $('#Button1').mouseup(function() {
    // debugger;
    //alert('Handler for .mouseup() called.');
    //stop the timer and decide on long click
    var d = new Date();
    //alert("mousedowntime=" + mousedowntime);
    presstime = d.getTime() - mousedowntime;
    //alert("presstime=" + presstime);
    if (presstime > 999/*You can decide the time*/) {
      //Do_Action_Long_Press_Event();
      alert("Long pressed.");
    } else {
      //Do_Action_Click_Event();
      alert("Click.");
    }
  });
});
4

2 回答 2

1

尝试使用touchstartandtouchend事件

所以:

$('#Button1').on('touchstart',function() {
    //Logic
});

$('#Button1').on('touchend', function() {
    //Logic
});
于 2012-11-19T06:20:16.013 回答
0

这是此SO 答案中的逻辑。我希望这是你正在寻找的。

于 2012-11-19T06:29:18.593 回答