2014-03-28 3 views
1

У меня есть следующие работы в сафари на iOS, но в chrome на iOS он, похоже, не работает. На самом деле браузер прокручивается, поэтому я не думаю, что e.preventDefault выполняет свою работу.chrome iOS touchmove событие не работает

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] вместо targetTouches [0] – singhiskng

+0

@singhiskng просто пробовал, это не имело никакого значения – Tesla

+0

у меня такая же проблема с Chrome. Могли ли вы найти решение самостоятельно? –

ответ

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); 
Смежные вопросы