固定导航闪烁

时间:2017-05-10 20:28:57

标签: javascript jquery scroll navigation fixed

场景:我已经构建了一个固定的导航功能,一旦滚动大于或等于200px(导航的高度),就会向标题添加一个类。

问题虽然该功能正常执行,但在某些屏幕尺寸上,导航会闪烁并拒绝正常运行的功能。我不确定是不是因为窗口底部不超过200px?

渴望:无论屏幕大小如何,我都希望导航能够正确执行粘性导航功能。

问题:我的jquery条件有什么问题?是否与.scrollTop()函数有关?

注意:以下是导航错误的截屏:Error Capture

JS代码:

// Side navigation Sticky function
$(window).scroll(function() {
    var top = $(window).scrollTop();

    if(top >= 200) {
        $('header').addClass('navbar-fixed-top')
    } else {
        $('header').removeClass('navbar-fixed-top')
    }
});

以下是原型的链接: JSfiddle

1 个答案:

答案 0 :(得分:1)

这是因为您的else部分。场景是: 1.增加课程 没有足够高的页面现在更低。 3. if不再是真的 4.它正在执行您的else部分。 页面又高了......

你应该实现可以阻止else的东西。也许检查像" onbottom"?像this

一样