Как определить, когда пользователь больше не выполняет прокрутку, чтобы инициировать добавление / удаление класса - PullRequest
0 голосов
/ 17 мая 2018

Я работаю над прототипом, у которого есть панель навигации, которая скрывается, когда пользователь прокручивает страницу вниз, и показывает, когда пользователь прокручивает вверх.Я хотел бы сделать еще один шаг, установив событие, которое отслеживает, когда пользователь больше не прокручивает, и анимирует навигационную панель на страницу через короткий промежуток времени (1,5 - 2 секунды).

Я прочитал о том, как мне поступить, но я не смог найти ничего, что полностью отвечало бы моим потребностям.

Вот мой прототип для справки: https://codepen.io/v_for_vinsanity/pen/2af1bfb20ae1578466943c7356de7348

Вот jquery, который я использую, чтобы показать / скрыть панель навигации:

var scrollSet = null;
var didScroll = false;
var windowTop = $(window).scrollTop();


function scrollUpdate () {
  didScroll = true;
  windowTop = $(window).scrollTop();
}

function scrollTicker () {

  if(didScroll) {

    if(windowTop > scrollSet) {
      $('body').addClass('hide-nav')
      scrollSet = windowTop;  
    }

    else if(scrollSet > windowTop){
      $('body').removeClass('hide-nav') 
      scrollSet = windowTop;
    }

    didScroll = false
  }

  requestAnimationFrame(scrollTicker);

}

$(window).scroll(scrollUpdate);
scrollTicker();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...