首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery粘性背景卷轴

问jquery粘性背景卷轴
EN

Stack Overflow用户
提问于 2016-09-13 05:13:33
回答 1查看 128关注 0票数 2

我想实现这样的目标;

http://wind-dance.com/sticky/

我希望html固定位置,直到图像滚动到底部。目前,我的脚本编码,它将滚动与html滚动。

有任何jquery脚本可以达到我想要的类似效果吗?

更新1

也许我上面的问题还不清楚。那时我改变了提问的方式。我希望滚动div元素,而不滚动主体内容,直到div元素到达底部。希望这能让大家都明白。内联脚本是我的当前代码,我可以部分实现它。

更新2

查看@bhavesh解决方案,我尝试将其修改为

代码语言:javascript
复制
$(document).ready(function() {
    var row = $('.row');
    var scroll_banner = $('.scroll_banner');
    var scroll_banner_height = scroll_banner.height();
    var row_height = row.height();

    $(window).on('scroll', function() {
        scroll_banner_height = scroll_banner.height();
        var windowPos = $(this).scrollTop();
        var scrollableAmount = windowPos / row_height * scroll_banner_height;
        row.scrollTop(scrollableAmount);
    })
});

这是非常糟糕的滚动和感觉不安的经验,有scrollTop在身体上的每一个滚动。

EN

回答 1

Stack Overflow用户

发布于 2016-09-13 06:50:55

您可以在示例中找到内联脚本,基本上在这个示例中,您将使用scrollTop属性附加到带有div滚动(包含图像)的Window Scroll事件上。

代码语言:javascript
复制
$(document).ready(function() {
    var row = $('.row');
    var scroll_banner = $('.scroll_banner');
    var scroll_banner_height = scroll_banner.height();
    var row_height = row.height();

    $(window).on('scroll', function() {
        var windowPos = $(this).scrollTop();
        var oldRowPos = row.scrollTop();
        row.scrollTop(oldRowPos+windowPos);
        var newRowPos = row.scrollTop();
        console.log([scroll_banner_height-row_height,newRowPos]);
        if (newRowPos < (scroll_banner_height-row_height)) {
            $(this).scrollTop(0);
        }
    })
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39462589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档