Javascript: Zepto проведите пальцем влево + вправо, прокрутите вверх + вниз

Поэтому я использую библиотеку Zepto для выполнения некоторых действий смахивания над списком элементов, который прокручивается влево и вправо. Код довольно прост, например:

Zepto('#planlist').swipeRight(function() {
    self.click_left();
});
Zepto('#planlist').swipeLeft(function() {
    self.click_right();
});

Он просто вызывает то же действие, что и моя кнопка нажатия:

click_left: function() {
    if(this.position > 0) {
        -- this.position;
        this.animate();
    }
},
click_right: function() {
    if(this.position < this.plans.length - 1) {
        ++ this.position;
        this.animate();
    }
}

В любом случае. Вопрос в том, если я не установил preventDefault() при прокрутке время от времени по диагонали будет вызываться как прокрутка, так и прокрутка страницы. Это проблема, потому что во время прокрутки страницы анимация не воспроизводится. Однако, если я использую preventDefault(), он не дает пользователю возможности прокручивать вверх и вниз при касании этой области. Это проблема, потому что на телефонных устройствах эта небольшая область занимает весь экран, поэтому у пользователя нет возможности прокручивать страницу вверх и вниз.

Итак, вопрос: могу ли я сделать смахивание влево и вправо предотвращать дефолт и сохранить возможность прокрутки вверх и вниз?

0 ответов

Другие вопросы по тегам