我正在尝试创建类似于 apaul34208 在 this thread 中回答的“在 800 像素后在 scrollDown 上显示 div”的效果.
问题是我也在使用this parallax effect在我的网站上,它禁用了正常的窗口滚动,因此整个网站都在某个高度为 100% 的 div (.parallax) 内滚动。这也会禁用所需的效果。
由于我想隐藏或显示的 div 应该处于固定位置,因此它必须位于滚动的 .parallax div 之外,但读取同一 div 的滚动位置。
我也试过 this thread 的解决方案,但我似乎无法让它发挥作用。
现在我正在使用这个脚本:
$(document).scroll(function() {
var y = $(this).scrollTop();
if (y > 800) {
$('.bottomMenu').fadeIn();
} else {
$('.bottomMenu').fadeOut();
}
});
它在非视差页面上工作正常,除了当页面加载到顶部时显示固定的 div,当向下滚动 1 px 时消失,仅在向下滚动 800 px 后再次出现。
但我想我不能在我想要实现的目标中使用 scrollTop。 有什么建议吗?
最佳答案
你试过吗:
.bottomMenu {
display: none;
}
如果没有,它将在页面加载时显示(scroll
函数未触发,因为您还没有滚动),如果您开始滚动则隐藏,因为 if
语句被评估为 false
因为 y 位置是 <800
和 $('.bottomMenu').fadeOut();
运行。
关于javascript - 根据另一个 div 滚动位置显示 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37622632/