簡體   English   中英

用touchmove事件替換mousemove

[英]Replace mousemove with touchmove event

我的程序識別mousemove event 我想做的是讓我的程序適用於移動設備。

這就是為什么我想將mousemove事件轉換為touchmove event

到目前為止我的代碼是這樣的:

var d=ctx.getImageData(0,0,canvas.width,canvas.height).data;
$hit=$("#hit");
$("#canvas").mousemove(function(e){handleMouseMove(e);});

tolerance = 20;
function handleMouseMove(e){

  e.preventDefault();
  e.stopPropagation();
  mouseX=parseInt(e.clientX-offsetX);
  mouseY=parseInt(e.clientY-offsetY);
  var isHit=d[(mouseY*cw+mouseX)*4+3]>tolerance;

  if(isHit){
    $hit.text("Yeahhhh");
  }else{
    //document.onmousemove = crash;
    $hit.text("Noooooooo");
  }
}

我有辦法輕松地做到這一點嗎?

我讀過相當於何時使用touchmove vs mousemove? 但我不知道如何處理mouseXmouseY

toe.js - 一個輕量級的觸摸事件庫,效果很好。 Hammerjs肯定有更多的定制,但toejs看起來更簡單。

並在您的代碼中有一個建議,以避免不必要的event.stopPropagation,請參閱此處

您可以使用jQuery UI Touch Punch進行hack jquery事件

閱讀本文: http//touchpunch.furf.com/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM