A continuación se muestra el código que estoy usando para corregir una barra lateral a medida que el usuario se desplaza. A partir de ahora, se superpone con mi pie de página. ¿Cómo puedo hacer que se detenga en cierto punto o cuando llegue al pie de página?¿Cómo hacer que el elemento flotante fijo se detenga en #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: Estaba a punto para arreglar el sangrado yo mismo :-) – GregL
Puede calcular la distancia entre los dos elementos (pie de página y barra lateral), y cuando esa distancia <= 0 puede dejar de mover la barra lateral hacia abajo. Echa un vistazo a esta publicación: http://stackoverflow.com/questions/225563/get-relative-position-between-2-dom-elements-using-javascript. –