下面是我用來在用戶滾動時修復邊欄的代碼。截至目前,它與我的頁腳重疊。我怎樣才能讓它在某個點停下來,或者當它碰到頁腳時?如何使#footer固定浮動元素停止?
<script type="text/javascript">
$(document).ready(function() {
if ($('.pageheaderwrap').length) {
$(window).scroll(function() {
if ($(this).scrollTop() > 362) {
$(".sidebar-left").css({
"position": "fixed",
"top": 0
});
} else {
$(".sidebar-left").css({
"position": "absolute",
"top": "255px"
});
}
});
} else {
$(window).scroll(function() {
if ($(this).scrollTop() > 230) {
$(".sidebar-left").css({
"position": "fixed",
"top": 0
});
} else {
$(".sidebar-left").css({
"position": "absolute",
"top": "125px"
});
}
});
}
});
</script>
@Cybernate:正要自己修復縮進。 :-) – GregL
您可以計算出兩個元素(頁腳和側邊欄)之間的距離,當該距離<= 0時,您可以停止向下移動側欄。看看這篇文章:http://stackoverflow.com/questions/225563/get-relative-position-between-2-dom-elements-using-javascript。 –