2017-02-14 60 views
1

我如何将touchmove识别为mousemove,我想使用下面的脚本,它适用于pc,但不适用于手机或平板电脑。有没有办法将touchmove识别为mousemove?Touchmove into Mousemove

<script> 
    $(document).bind('mousemove', function(e){ 
     $('#try').css({ 
      left: e.pageX -300, 
      top: e.pageY -145 
     }); 
    }); 

     </script> 
+0

有没有任何理由不只是注册一个'touchmove'侦听器与一个普通的回调? – qxz

+0

我会做一些像on.touchmove(function(e){mousemove})?? –

+0

只需使用'touchmove'事件,您可以在这里找到更多信息:https://developer.mozilla.org/zh-CN/docs/Web/Events/touchmove 每次手指在触摸屏上移动时都会产生。 – Grynets

回答

0

我把通用代码在一个单独的功能,如:

function onMouseMove(x, y) { 
    $('#try').css({ 
     left: x -300, 
     top: y -145 
    }); 
} 

然后注册事件监听器两种mousemovetouchmove的坐标转发到你的常用功能:

$(document).bind('mousemove', function(e){ 
    onMouseMove(e.pageX, e.pageY); 
}); 
$(document).bind('touchmove', function(e){ 
    var touch = e.changedTouches[0]; 
    onMouseMove(touch.pageX, touch.pageY); 
});