我找到并调整了这种方法,让我的div跟随滚动条,只有在达到某个点后才会显示:
$.fn.followFrom = function (pos, left_fixed, left_absolute) {
var $this = this,
$window = $(window);
$window.scroll(function (e) {
if ($window.scrollTop() < pos) {
$this.css({ // no move
position: 'absolute',
top: 400,
left: left_absolute
});
} else { // move
$this.css({
position: 'fixed',
top: 220,
left: left_fixed
});
}
});
};
奇怪(或不是?),只有当我的div有正确的内容时它才有效。 但是当它是屏幕上的底部元素时,当滚动和位置到达时,跳转滚动条会跳回到顶部,这是一种非常令人沮丧的用户体验。
上下文是一个搜索页面,我在左边的移动div中有一个地图,右边是搜索结果。所以我希望在向下滚动结果时,地图在左侧保持可见状态。
因此只有在有结果并且结果高度大于地图高度时才有效。但是一旦结果的高度变短,我就会跳起来。
由于