Как отличить событие прокрутки от события длинного нажатия? - PullRequest
0 голосов
/ 24 октября 2018

Проблема:

SomeDomElement.addEventListener('touchstart', function preventLongPress(event) {

                  if (event.touches.length >=1) event.preventDefault();
                }, false);

Если я использую: if (event.touches.length> = 1) event.preventDefault (); , тогда это предотвращаетдлительное нажатие, но также отключает событие прокрутки.

Нет никаких событий касания или касания для длительного нажатия.

Что я желал:

предотвращатьдолгое нажатие, но не запрещайте прокрутку

1 Ответ

0 голосов
/ 24 октября 2018

Надеюсь, это поможет вам.

document.addEventListener("touchstart", function(){
    detectTap = false;
});
document.addEventListener("touchmove", function(){
    detectTap = true;
});
document.addEventListener("touchend", function(){
    if(detectTap)
        alert("scrolled"); /* here add whatever functionality you wants */
    else 
        alert("long pressed"); /* here add whatever functionality you wants */
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...