Chrome iOS touchmove事件无效

时间:2014-03-28 04:19:31

标签: javascript ios google-chrome canvas

我在iOS上的safari中有以下工作,但在iOS上的chrome中似乎没有工作。实际上浏览器会滚动,所以我不认为e.preventDefault正在做它的工作。

canvas.addEventListener("touchmove", trackPositionTouch, true);

function trackPositionTouch(e) {
    e.preventDefault();
    mouse.x = e.targetTouches[0].pageX - canvas.offsetLeft;
    mouse.y = e.targetTouches[0].pageY - canvas.offsetTop;
}

1 个答案:

答案 0 :(得分:0)

检查两种事件类型是个更好的主意。这就是我在项目中的表现。我正在使用jQuery来选择DOM元素。

var touch = e.originalEvent.touches[0] || e.originalEvent.targetTouches[0];

var parentOffset = $(this).parent().offset();

var relX = (touch.pageX - parentOffset.left);
var relY = (touch.pageY - parentOffset.top);