我有以下HTML
<header class="fixed">...</header>
<div id="content">
<div id="sidemenu" class="fixed">...</div>
<div id="scroll">...</div>
</div>
<footer class="fixed">...</footer>
CSS和规则中有各种定位规则
.fixed {
position: fixed;
}
这实现了仅具有id滚动移动的div的期望效果。但是,这可能会使页脚无法看到。
我想要做的是,一旦滚动div的底部到达页脚的底部,将position: fixed
更改为position: absolute
,然后一切都会向上滚动显示页脚。
但我不知道该怎么做。我在看waypoints,但我有点过头了。
答案 0 :(得分:1)
$(window).scroll(function () {
var scrollBottom = $(document).height() - $(window).height() - $(window).scrollTop();
if (scrollBottom <= $("footer").height()) {
$("footer").css("position", "absolute");
}
else {
$("footer").css("position", "fixed");
}
});
答案 1 :(得分:0)
为此,您将有'onScroll'事件。并检查滚动div的坐标何时与页脚的坐标匹配。一旦匹配,在处理程序的实现中将位置更改为“绝对”。