仅在浏览器Scroll Up上添加类

时间:2015-05-31 16:34:38

标签: javascript jquery scroll scrollbar

只有在向上滚动浏览器页面时才能添加类。

问题Filide>>

JS

$(window).scroll(function() {    
    var scroll = $(window).scrollTop();

    if (scroll <= 100) {
        $(".nav").addClass("darkHeader");
    } else {
        $(".nav").removeClass("darkHeader");
    }
});

问题是这个js在向下滚动页面时添加了类。但是我想在Scroll Up浏览器中添加类,之后向下滚动类将删除。
参见示例demo>>

1 个答案:

答案 0 :(得分:1)

如果您想知道用户是向上还是向下滚动,您需要跟踪最后一个滚动位置。然后检查新滚动位置是大于还是小于该位置。然后,您可以相应地设置类

// Script
lastScroll = 0;
$(window).on('scroll',function() {    
    var scroll = $(window).scrollTop();
    if(lastScroll - scroll > 0) {
        $(".nav").addClass("darkHeader");
    } else {
        $(".nav").removeClass("darkHeader");
    }
    lastScroll = scroll;
});

JSFiddle