我想知道是否可能在滚动时检测具有css属性position: fixed;的元素何时越过另一个元素。我的目标是防止固定位置的div跨越高度不同的页面上静态定位的页脚,此外,在较小的屏幕上查看时,页脚的高度可能会发生变化。
理想情况下,固定/可滚动的div将被定位在窗口底部20px处,然后当用户滚动到页脚时,它将保持在距离页脚20px的位置。
理想情况下,固定/可滚动的div将被定位在窗口底部20px处,然后当用户滚动到页脚时,它将保持在距离页脚20px的位置。
$(window).scroll(function () {
if ($(".fixedposition").offset().top < ($(".footer").offset().top - 30)) {
$(".fixedposition").css("top", "30px");
$(".fixedposition").css("display", "block");
} else {
$(".fixedposition").css("display", "none");
}
});
在这里查看示例:http://jsfiddle.net/flish/T6x4R/
当然,对于您的固定 div
,您可能应该做一些其他操作,而不仅仅是设置 display:none;
top: 0; bottom: 0
(=100% 高度)吗?固定元素是用于什么的(广告横幅、侧边栏菜单等)?(XY 问题) - try-catch-finally