У меня есть небольшая веб-галерея, в которую я добавил навигацию для мобильных браузеров. Я сделал это с помощью довольно простого touchstart/touchmove/touchhend отслеживания событий.Поддержка Javascript для касания без блокировки поддержки браузеров
Проблема в том, что когда я пытаюсь зажать масштаб в окне браузера, это не удается, если какой-либо палец начинается с элемента, к которому я добавил обработчики событий касания, я угадываю из вызовов на preventDefault.
Есть ли способ отслеживать события касания для навигации по моим изображениям, не блокируя функцию увеличения и уменьшения масштаба браузера? Я не против блокировать прокрутку одного пальца, если это над моим элементом, но я хочу разрешить масштабирование.
Вот код:
function addDragHandlers(eventDivId) {
var startX, endX;
var slides = $('#'+eventDivId);
slides.bind('touchstart', function(e) {
e.preventDefault();
startX = e.pageX;
endX = startX;
});
slides.bind('touchmove', function(e) {
e.preventDefault();
endX = e.pageX;
});
slides.bind('touchend', function(e) {
e.preventDefault();
if (endX - startX < 0) {
// go to next image
} else if (endX - startX > 0) {
// go to previous image
} else {
// do click action
}
}
});
}
Поддерживает ли Android поддержкуGestureStart? – user800268
ICS и выше следует. – Droidnoid
Нет, Android по-прежнему не поддерживает жесты – Parth