【发布时间】:2018-01-01 20:28:08
【问题描述】:
我需要停止一个 div 在它接触另一个元素之前在滚动上获得固定位置,基本上让它回到某个位置的绝对位置,这应该适用于任何尺寸的屏幕。我有一个带有代码的 jsfiddle,有两个元素,如果您知道答案,请查看示例并提供帮助,谢谢!
var navTop = $('#nav').offset().top;
var lastMode = "absolute";
$(window).scroll(function(){
var mode;
if ($(this).scrollTop() >= navTop) {
mode = 'fixed';
} else {
mode = 'absolute';
}
if(lastMode !== mode) {
if (mode == 'fixed') {
$('#nav').css('position', 'fixed');
$('#nav').css('top', '0');
} else {
$('#nav').css('position', 'absolute');
$('#nav').css('top', navTop);
}
lastMode = mode;
}
});
https://jsfiddle.net/Zygimantas10/vro3LLu9/
如果不清楚,请告诉我。
【问题讨论】:
标签: javascript jquery scroll offset