Мне нужно вызвать функцию, когда палец перемещается по сенсорному устройству. Когда вы касаетесь движка, прокрутка браузера по умолчанию отключена с помощью e.preventDefault();
См. Первый раздел на JsFiddle.Как предотвратить браузер по умолчанию с помощью сенсорной кнопки в сочетании с дроссельной функцией
Для уменьшения трафика эта функция вызывается только каждые полсекунды, пока вы touchmove
с _.throttle
из библиотеки underscore
. Однако прокрутка браузера больше не отключена. См. second section.
Как отключить прокрутку браузера на сенсорных устройствах, даже если вызываемая функция дросселируется?
Раздел 1
$('#test1').on("touchmove", function (ev) {
var e = ev.originalEvent;
e.preventDefault();
$('#test1').text(e.targetTouches[0].pageX, e.targetTouches[0].pageY);
});
Раздел 2
$('#test2').on("touchmove", _.throttle(function (ev) {
var e = ev.originalEvent;
e.preventDefault(); // browser still scrolling - why?
$('#test2').text(e.targetTouches[0].pageX);
},500));
Отлично, спасибо так много! – wurstbrotrest
@wurstbrotrest Нет проблем. Рад, что это помогло. –