gpt4 book ai didi

jquery - 在某个点停止滚动

转载 作者:行者123 更新时间:2023-12-01 05:00:08 25 4
gpt4 key购买 nike

我正在尝试复制类似于 this 的内容.

当您向下滚动时,div 会随着您滚动(position:fixed),直到到达某个点并停止(position:absolute),并且如下如果您继续向下滚动,它会保留页面上的该位置 (250px),直到您向上滚动以再次将其重新拾起。

What I have so far .

现在我的 fiddle 做了所有的事情,除了它不保留它被“放下”的位置,而是回到原来的位置。

想法?

最佳答案

您需要计算窗口的scrollTop值,然后将其应用为top的值并将位置设置为absolute。

$('element').css({
'top': $(window).scrollTop(),
'position': 'absolute'
});

当您继续滚动时,scrollTop 值会发生变化,因此您只能执行一次。使用变量来跟踪元素所处的状态。据我所知,有以下三种:

  1. 亲戚
  2. 已修复
  3. 绝对

使用此变量,您还可以通过仅在需要时设置类来减少浏览器的压力。例如:

if( y > 100 && pos != 'fixed' ){

pos = 'fixed';

$('element').addClass('fixed');

}else if( y > 100 && pos != 'relative' ){

pos = 'relative';

$('element').addClass('relative');

}

希望有帮助:)

关于jquery - 在某个点停止滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10917139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com