0

我们的网站上有背景,我想知道停止背景滚动超过一定数量的最简单方法是什么?

因此,如果您使用 scroll-y ,那么您拥有的内容量是无限的。但是,在假设 250px、100px 等之后如何停止 BG 滚动

谢谢

4

2 回答 2

1

我认为你想做这样的事情,我没有运行这段代码,所以它可能并不完美,但它应该向你展示技术(可能还混淆了“固定”和“滚动”位 - 你应该可以很快分辨出来)

$(window).scroll(function(){
    var d = $(window).scrollTop();
    if(d > 250){
        $('#image-div').css('background-attachment', 'fixed');
    }else{
        $('#image-div').css('background-attachment', 'scroll');
    }
});

在伪代码中:当窗口滚动时,获取一个等于屏幕“滚动”量的变量 (d),如果它超过 x 量,则附加或释放附件。

值得添加的功能是每次滚动页面时都会触发,可能有一些方法对处理器能力的要求更轻,但它们看起来会更复杂一些。

于 2013-07-18T13:24:17.660 回答
1

我不是 100% 确定你的意思,但是这个呢:

http://jsfiddle.net/Tgm6Y/5245/

它使用 jQuery,您可以选择一个数量,例如 250px

var windw = this;

$.fn.followTo = function ( pos ) {
    var $this = this,
        $window = $(windw);

    $window.scroll(function(e){
        if ($window.scrollTop() > pos) {
            $this.css({
                position: 'absolute',
                top: pos
            });
        } else {
            $this.css({
                position: 'fixed',
                top: 0
            });
        }
    });
};

$('#f').followTo(250);
于 2013-07-18T13:25:10.070 回答