2011-10-26 18 views

risposta

7

Avrete bisogno di scoprire l'altezza della testata e la sua posizione sulla pagina poi basta mostrare o nascondere il div a seconda del valore scrollTop utilizzando jQuery.

Ad esempio:

// 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(); 

Poi ti basta impostare la .fixedDiv a position: fixed: top: 0; a sinistra: 0;

Modifica: Ho aggiunto una funzione di checkY() che è possibile chiamare ogni volta che la pagina viene caricata e anche su scroll. Per prima cosa nasconderlo, basta usare i CSS.

+0

funzionato come un fascino, grazie! – checkenginelight

+0

scusa solo una cosa rapida .. come faccio a impedirmi di visualizzarla all'inizio? ecco il mio file: http://jsfiddle.net/nHnrd/14/ – checkenginelight

+1

Ah, sì, vedi la mia modifica, dovrebbe ordinarlo! – will

0

Si potrebbe desiderare di mostrare solo e nascondere il proprio div piuttosto che di classe pseudo E nascondere e mostrare

inizialmente:. $ ("# myDiv") hide(); quindi (su scroll): $ ("# mydiv"). Show();

insieme ciò che si desidera che il div a guardare come vale a dire 0,0 e fissato

Utilizzare il Mi tengo il metodo di semplice!

Problemi correlati