我想要实现的是让背景中的一些 div 滚动得比其他的慢,以产生视差滚动效果。我找到并修改了这段 jQuery 代码:
$(window).scroll(function () {
$('.anim').css({
'top': -($(this).scrollTop() / 3) + "px"
});
});
它工作正常,但有一个异常(exception),我的 div 有“top:200px”,据我所知,我第一次滚动时它会将 top 重置为 0,然后以正确的方式进行操作。这是演示,因此您可以看到为什么它看起来不正常,不要介意“黑色世界”剪辑,它现在只是一个占位符。当您第一次滚动时,您会注意到“跳转”到 top:0。有没有办法不让它发生?
最佳答案
你在你的行中设置绝对 y 位置
'top': -($(this).scrollTop() / 3) + "px"
需要根据div的起始位置进行调整
'top': 200-($(this).scrollTop() / 3) + "px"
关于jquery - 一个 div 的 jQuery 视差滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20128027/