如何检测用户何时不再滚动以启动类的添加/删除

时间:2018-05-17 19:46:12

标签: javascript jquery html5 css3

我正在制作一个原型,它有一个导航栏,当用户向下滚动页面时会显示该导航栏,并显示用户向上滚动的时间。我想通过设置跟踪用户何时不再滚动的事件并在短时间内(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();

0 个答案:

没有答案