我在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;
}
答案 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);