Sto provando a eseguire alcuni script quando il div raggiunge un determinato punto quando viene fatto scorrere. C'è una navigazione fissa e quando l'utente fa scorrere la finestra suppone di cambiare il nome del navigatore una volta raggiunto vicino al nav. Sto usando la funzione $ (finestra) .scroll ma controlla solo la posizione div una volta e non aggiorno il valore. Come fare scorrere controlla la dimensione della finestra ogni spostamento di 5-10 px in modo che non ci sia troppa memoria/elaborazione. Il codice viene istituito presso: http://jsfiddle.net/rexonms/hyMxq/Come ottenere il valore di posizione superiore div durante lo scorrimento
HTML
<div id="nav"> NAVIGATION
<div class="message">div name</div>
</div>
<div id="main">
<div id="a">Div A</div>
<div id ="b"> Div B</div>
<div id ="c"> Div C</div>
</div>
CSS
#nav {
height: 50px;
background-color: #999;
position:fixed;
top:0;
width:100%;
}
#main{
margin-top:55px;
}
#a, #b, #c {
height:300px;
background-color:#ddd;
margin-bottom:2px;
}
SCRIPT
$(window).scroll(function() {
var b = $('#b').position();
$('.message').text(b.top);
if (b.top == 55) {
$('.message').text("Div B");
}
});
È, infatti, controllando la posizione di 'b' su ciascun incremento di scorrimento, ma la posizione di' b' relativa al documento non cambia mai. Vedi la risposta di @ j08691. – Shmiddty