我的页面上有一个滚动的侧边栏,滚动到视图当前正在查看的页面上的任何位置。我试过谷歌搜索和搜索Stack Overflow,没有运气我的情况。我尝试过其他代码来获得相同的结果,但其他代码似乎打破了页面。
问题在于,当观看者到达我的页脚时,侧边栏仍然可以滚动到最后一个元素(div标签)并向下推动我的页脚几乎延长了页面的长度,没有内容,只有页脚。我需要让侧边栏在页面上到达或查看最终元素(div id)时停止滚动。
以下是代码:
$(function() {
var $sidebar = $(".sidebar"),
$window = $(window),
offset = $sidebar.offset(),
topPadding = 15;
$window.scroll(function() {
if ($window.scrollTop() > offset.top) {
$sidebar.stop().animate({
marginTop: $window.scrollTop() - offset.top + topPadding
});
} else {
$sidebar.stop().animate({
marginTop: 0
});
}
});
});
最后一个元素ID为#return
,页脚的ID为#footer
,侧边栏的类别为.sidebar
。我不认为侧边栏的CSS是问题,但如果你需要看到我可以提供它。