2011-10-26 10 views

Respuesta

7

Tendrá que averiguar la altura de la cabecera y de su posición en la página a continuación, sólo mostrar u ocultar el div en función del valor scrollTop usando jQuery.

Por ejemplo:

// Get the headers position from the top of the page, plus its own height 
var startY = $('header').position().top + $('header').outerHeight(); 

$(window).scroll(function(){ 
    checkY(); 
}); 

function checkY(){ 
    if($(window).scrollTop() > startY){ 
     $('.fixedDiv').slideDown(); 
    }else{ 
     $('.fixedDiv').slideUp(); 
    } 
} 

// Do this on load just in case the user starts half way down the page 
checkY(); 

A continuación, sólo tendrá que establecer el .fixedDiv a la posición: fijo: top: 0; izquierda: 0;

Edit: Agregué una función checkY() a la que puede llamar cada vez que se carga la página y también en desplazamiento. Para ocultarlo inicialmente, solo usa CSS.

+0

funcionó de maravilla, gracias! – checkenginelight

+0

lo siento solo una cosa rápida ... ¿cómo puedo evitar que se muestre al principio? aquí está mi archivo: http://jsfiddle.net/nHnrd/14/ – checkenginelight

+1

¡Ahh, sí, mira mi edición, debería ordenar eso! – will

0

Es posible que desee mostrar y ocultar simplemente el div en lugar de pseudo clase y ocultar y mostrar

inicialmente:. $ ("# mydiv") hide(); luego (en desplazamiento): $ ("# mydiv"). Show();

conjunto lo que quiere que su div para que parezca es decir, 0,0 y fija

Uso del Mantengo Método sencillo!

Cuestiones relacionadas