我在我的网站上创建了一个导航栏(仍在开发中)。当访问者向上滚动时,会出现此导航栏。但是,导航栏始终保持最佳状态。在顶部我有原始菜单,所以需要有导航栏。Javascript:导航栏在滚动并到达顶部时消失
我想达到的目的是当访问者点击某个点时,菜单栏就会消失,就像点击div并消失。到目前为止没有运气。我使用-70px(position:fixed)将浏览栏放置在视口外,并在浏览器向上滚动时通过JavaScript显示。
这是JavaScript的导航栏:
var lastScrollTop = pageYOffset || document.documentElement.scrollTop;
window.addEventListener("scroll", function() {
var st = window.pageYOffset || document.documentElement.scrollTop;
if (st > lastScrollTop) {
// Scroll Down
$('.navbar').css({
"transform": "translate3d(0,-70px,0)"
});
} else {
// Scroll Up
$('.navbar').css({
"transform": "translate3d(0,70px,0)"
});
}
lastScrollTop = st;
}, false);
任何帮助,使击球一定DIV向上滚动时,我将非常感激导航栏消失。提前致谢!
这是我得到的最接近,见下文。基本上它是我需要的(禁用某个区域的导航栏,在这种情况下是从底部开始的350px)。我只需要它是顶部,而不是底部。
$(window).scroll(function() {
var pxFromBottom = 350;
if ($(window).scrollTop() + $(window).height() > $(document).height() - pxFromBottom) {
$('.navbar').css({
"transform": "translate3d(0,-70px,0)"
});
}
});
谢谢,我找到了我认为的解决方案。我为我的js脚本添加了第二个条件:|| ($(this).scrollTop()<500)){,看我上面的附加答案。我会研究你对translateY的建议(-100%)。感谢那。 – WPasman