Как определить горизонтальную прокрутку в jQuery?
Как определить горизонтальную прокрутку с помощью jQuery?
Это вызовет все свитки:
$(window).scroll(function () {
alert('in');
});
Я хочу только горизонтальный.
Ответы
Ответ 1
Кажется, что это работает.
var lastScrollLeft = 0;
$(window).scroll(function() {
var documentScrollLeft = $(document).scrollLeft();
if (lastScrollLeft != documentScrollLeft) {
console.log('scroll x');
lastScrollLeft = documentScrollLeft;
}
});
jsFiddle.
Ответ 2
Обновление, показывающее направление влево или вправо в горизонтальной прокрутке в соответствии с приведенным выше кодом:
var lastPos = 0;
$(window).scroll(function() {
var currPos = $(document).scrollLeft();
if (lastPos < currPos) {
console.log('scroll right');
}
if (lastPos > currPos)
{
console.log('scroll left');
}
lastPos = currPos;
});
Проверьте его на
http://jsfiddle.net/EsPk7/7/
Ответ 3
dunderwood jsFiddle ссылка фактически не содержала его код. Я расколол его jsFiddle с тем, что смесь того, что он разместил здесь, и что на jsFiddle:
var lastPos = 0;
$(window).scroll(function() {
var currPos = $(document).scrollLeft();
if (lastPos < currPos) {
$('#current').html('Right');
}
if (lastPos > currPos) {
$('#current').html('Left');
}
lastPos = currPos;
});
http://jsfiddle.net/kuVK8/