Как узнать, сколько юзер прошел за определенный скролл страницы?

336
01 сентября 2017, 22:58

Как можно узнать значение того, сколько юзер прошел за определенный скролл расстояния и записать это значение в переменную?

Answer 1

Просто используй $(document).scrollTop() и плагин jquery-mousewheel (https://github.com/jquery/jquery-mousewheel)

var lastScrollPosition = 0, scrollDistance;
$('body').mousewheel(function() {
  clearTimeout($(this).data('timer'));
  $(this).data('timer', setTimeout(function() {
    scrollDistance = $(document).scrollTop() - lastScrollPosition;
    lastScrollPosition = $(document).scrollTop();
    console.log(scrollDistance);
  }, 250));
});

Мой пример на CodePen(здесть плагин не работает почему-то): https://codepen.io/Rundik/pen/OjrBNK

Вот две темы на английском stackoverflow, откуда я взял инфу: https://stackoverflow.com/questions/2021440/detect-distance-scrolled-from-top-jquery https://stackoverflow.com/questions/12308987/catch-one-scroll

READ ALSO
Загрузка и синхронный старт css анимации

Загрузка и синхронный старт css анимации

Чтобы избежать асинхрона при старте цельной анимации, я использую метод предзагрузки графония силами jsПосле полной загрузки картинок меняю...

362
Android Studio не правильно выполняет implements

Android Studio не правильно выполняет implements

Как вы можете видеть в getView int iХотя раньше было int position

356
Как включить пустые строки в результат String.split?

Как включить пустые строки в результат String.split?

Есть набор строк от внешнего сервиса, вот пример одной из них:

347