fbir
@fbir
начинающий верстальщик

Как сделать переключение страниц на телефоне при помощи SWIPE?

Добрый день, уважаемые знатоки. Столкнулся с проблемой которую не могу решить на своем уровне понимания, есть необходимость переключать на сайте каталог товаров на мобильном устройстве при помощи свайпа право лево. Нашел вот такой код, но не понимаю как его применить.
document.addEventListener('touchstart', handleTouchStart, false);        
document.addEventListener('touchmove', handleTouchMove, false);

var xDown = null;                                                        
var yDown = null;

function getTouches(evt) {
  return evt.touches ||             // browser API
         evt.originalEvent.touches; // jQuery
}                                                     

function handleTouchStart(evt) {
    const firstTouch = getTouches(evt)[0];                                      
    xDown = firstTouch.clientX;                                      
    yDown = firstTouch.clientY;                                      
};                                                

function handleTouchMove(evt) {
    if ( ! xDown || ! yDown ) {
        return;
    }

    var xUp = evt.touches[0].clientX;                                    
    var yUp = evt.touches[0].clientY;

    var xDiff = xDown - xUp;
    var yDiff = yDown - yUp;

    if ( Math.abs( xDiff ) > Math.abs( yDiff ) ) {/*most significant*/
        if ( xDiff > 0 ) {
            /* left swipe */ 
        } else {
            /* right swipe */
        }                       
    } else {
        if ( yDiff > 0 ) {
            /* up swipe */ 
        } else { 
            /* down swipe */
        }                                                                 
    }
    /* reset values */
    xDown = null;
    yDown = null;                                             
};


как заставить его листать страницы?
  • Вопрос задан
  • 166 просмотров
Решения вопроса 1
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Замените
/* left swipe */ 
/* right swipe */
/* up swipe */ 
/* down swipe */

на то, что должно выполнится при определённом свайпе.

Но, по моему это очень плохая идея, так как на многих устройствах эти жесты заняты системой.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы