如何确保在用户滚动时,它会继续检查滚动的距离?

时间:2017-03-22 05:16:06

标签: jquery

我正在使用throttle来调用一个函数,我正在检查用户滚动了多远。如果用户滚动到115px以上,那么我正在向正文添加一个类。除非用户继续在移动设备/平板电脑设备上快速滚动,否则只会在用户停止滚动时添加该类。 我怀疑除非用户停止滚动,否则不会检查滚动。如何确保在用户滚动时,它会继续检查它滚动了多远?

var throttled = _.throttle(myFunc, 50);
$(window).on('scroll', throttled);

function myFunc() {
   var scroll = $(window).scrollTop();
   if (scroll >= 115) {
      $('body').addClass('header-fixed');
   }

1 个答案:

答案 0 :(得分:0)

我认为你必须把事件监听器放在滚动状态:

$(document).ready(function(){
    $(window).on('scroll', function() {
    // get the scroll value
    scrollPosition = $(this).scrollTop();
    console.log(scrollPosition);
    // Put some check for the scroll position and fix the header
    });
});

JSfiddle Link