jquery - 使用视差滚动的内容下方的空白空间

标签 jquery css parallax

我正在为我的新网站使用视差滚动,但我发现内容滚动过去后有大量空白空间。它滚动到内容底部,但那里什么也没有。

我认为这是因为脚本正在加速滚动,因为当我删除视差效果时,内容会像预期的那样停在浏览器窗口的底部。

jQuery:

    $(document).ready(function() {
    /* Scroll event handler */
    $(window).bind('scroll',function(e){
        parallaxScroll();
    });
});

/* Scroll the background layers */
function parallaxScroll(){
    var scrolled = $(window).scrollTop();
    $('#Body_Background').css('top',(0-(scrolled*.3))+'px');
    $('#Home_WelcomeMessage').css('top',(0-(scrolled*.305))+'px');
    $('#Home_ContentBox2').css('top',(0-(scrolled*.605))+'px');
    $('#Home_ContentBox3').css('top',(0-(scrolled*.995))+'px');
}

CSS:

#Body_Background { z-index: 3; position: fixed; left: 0; top: 0; width: 100%; height: 100%; }
#Body_Wrapper { position: relative; padding: 0; margin: 0; }
#Home_ContentBox1 { z-index: 5; position: relative; width: 100%; height: 950px; left: 0px; margin-top: 800px; padding: 0px; }
#Home_WelcomeMessage { z-index: 4; position: fixed; width: 100%; height: 400px; top: 0; margin-top: 400px; }
#Home_ContentBox2 { z-index: 5; position: relative; width: 100%; height: 800px; left: 0px; margin-top: 100px; padding: 0px; }
#Home_ContentBox3 { z-index: 5; position: relative; width: 100%; height: 1000px; left: 0px; margin-top: 0px;  padding: 0px; }

非常感谢任何帮助:)

最佳答案

我设法解决了这个问题。

对于以后遇到同样问题的人。我将 ContentBox1、2 和 3 div 设置为绝对定位而不是相对定位,然后使用 margin-top 将它们向下推以确保它们处于正确的位置。

关于jquery - 使用视差滚动的内容下方的空白空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19816448/

相关文章:

javascript - 如何将流体宽度视频与 Parallax 网站合并?

javascript - 如何在完全加载后(循环)打开和关闭弹出窗口?

CSS:在悬停时同时显示和隐藏不同的 div?

html - 在一行中显示 div 元素

css - ExpressJS 的 Assets

javascript - 向后滚动时视差元素位置不同

javascript - 视差滚动 : Unwanted gap in between layers

javascript - DataTables - 初始化时按第 10 列排序,然后按第 9 列排序

jQuery 验证器仅允许基本字符

javascript - 用按钮替换文本