我正在使用以下jQuery代码(由James Montagne提供)来实现在用户向下滚动250像素后开始固定位置滚动,以便该元素保持固定在浏览器的顶部。
截图:
(这个原始问题和答案的补充问题:如何在特定位置停止固定位置滚动?)
$(window).scroll(function(){
$("#theFixed").css("top",Math.max(0,250-$(this).scrollTop()));
});
问题:此外,当滚动的固定位置元素底部到达父div元素的末尾时,我希望停止固定位置滚动。这样可以防止固定位置元素溢出父元素并被截断。
我的示例代码在这里:http://jsfiddle.net/b43hj/2020/
<div>
<div id="theFixed" style="position: fixed; top: 250px; background-color: red">
0 SOMETHING<br />
1 SOMETHING<br />
2 SOMETHING<br />
3 SOMETHING<br />
4 SOMETHING<br />
5 SOMETHING<br />
6 SOMETHING<br />
7 SOMETHING<br />
8 SOMETHING<br />
9 SOMETHING<br />
10 SOMETHING<br />
11 SOMETHING<br />
12 SOMETHING<br />
13 SOMETHING<br />
14 SOMETHING<br />
15 SOMETHING<br />
16 SOMETHING<br />
17 SOMETHING<br />
18 SOMETHING<br />
19 SOMETHING<br />
20 SOMETHING<br />
21 SOMETHING<br />
22 SOMETHING<br />
23 SOMETHING<br />
24 SOMETHING<br />
25 SOMETHING<br />
26 SOMETHING<br />
27 SOMETHING<br />
28 SOMETHING<br />
29 SOMETHING<br />
</div>
THIS IS A LONG SENTENCE THAT GOES PAST THE RED SOMETHINGS
<br>
THIS IS A LONG SENTENCE THAT GOES PAST THE RED SOMETHINGS
<br>
... END
</div>
截图:
![问题截图](https://istack.dev59.com/7mH5g.webp)