2015-10-14 4 views
0

Как определить направление прокрутки на телефонах? настоящее время я используюНаправление прокрутки по телефону?

$window.on('touchmove', onPhone); 

вызвать функцию onPhone, когда сенсорный скроллинг происходит. Но как определить, прокручивается ли она вверх или вверх?

Заранее благодарен!

ответ

2

Предполагается, что вам нужно только прокрутить вверх и вниз.

var lastPoint = null; //global 

$(window).on('touchmove', function(){ 

    var currentPoint = e.originalEvent.changedTouches[0].pageY; 

    if(lastPoint != null && lastPoint < currentPoint){ 
     //swiped down 
     console.log('you scrolled up'); 

    }else if(lastPoint != null && lastPoint > currentPoint){ 
     //swiped up 
     console.log('you scrolled down'); 
    } 

    lastPoint = currentPoint; 
}); 

Если вы хотите, чтобы обнаружить оставленные правильные направления прокрутки можно использовать один и тот же код, но изменения «Пейджи» до «pageX».

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

+0

Ницца! Спасибо ~ Я использовал концепцию lastPoint, но я обнаружил, что применение ее на «touchhend», похоже, работает лучше. –

+0

без проблем. Приятно, я сделал аналогичную вещь, используя координаты Y от touchstart и сравнивая это значение с координатами Y touchhend :) – Mark183

Смежные вопросы