在我的网站上,我有两个导航栏,一个导航栏与文本一起向上滚动,但是另一个导航栏在我向上滚动时隐藏,而在向下滚动时显示。一旦返回pageYOffset = 0,我只是不知道如何使它不可见。有人知道如何吗?

最佳答案

首先,欢迎来到stackoverflow!

要知道偏移量何时位于特定位置,您需要侦听滚动和调整大小事件,请尝试以下操作:

function checkPageOffset() {
    if(window.pageYOffset === 0) {
        // do your menu manipulation here
    }
}

window.addEventListener('scroll', checkPageOffset);
window.addEventListener('resize', checkPageOffset);


这样,该函数将在每次滚动和每次调整大小时运行,并且仅在偏移量为0的情况下运行代码。如果滚动不完全为0,则您可能更愿意测试window.pageYOffset < someMinimumOffset

就像我在上面的评论中提到的那样,您的系统中已经有一些代码正在测试偏移量是否大于某个阈值,以便首先显示菜单,实际上您只需要添加该代码即可如果不满足该条件,则可以隐藏菜单。如果您可以发布该代码,我们也许可以帮助您将解决方案与现有设置更清晰地集成。

编辑:根据下面的Tracker1的注释合并收听调整大小

关于javascript - 当pageYOffSet = 0时隐藏NavBar,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54796774/

10-12 15:29