Ho isolato il più che posso il mio codice in questo modo: http://jsfiddle.net/uXVWu/scrollTo durante lo scorrimento
HTML:
<a id="stopHere" >Hi !</a>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
JS:
var theAnchor=document.getElementById("stopHere");
var tempX,tempY;
function stopScroll(e)
{
var c=parseInt(document.getElementById('stopHere').offsetWidth);
var d=parseInt(document.getElementById('stopHere').offsetHeight);
if(tempX<=c&&tempY<=300+d&&0<=tempX&&300<=tempY)window.scrollTo(0,200);
}
function update(e)
{
var doc=document.documentElement;
var body=document.body;
tempX=(e.pageX)?e.pageX:e.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);
tempY=(e.pageY)?e.pageY:e.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0);
}
window.onscroll=stopScroll;
window.onmousemove=update;
CSS:
#stopHere
{
float:left;
width:100%;
border:1px solid black;
text-align:center;
}
Cosa fa il programma è che se il cursore è su <a>
, quindi si scorre, il <a>
sarà in alto. Quello che voglio è che lo scorri e vada in cima. Come può funzionare?
Possibile duplicato: http://stackoverflow.com/questions/2907367/have-a-div-cling-to-top-of-screen-if-scrolled-down-past-it – Richard
Può ripetere per favore il risultato desiderato, magari con qualche parola in più - ho difficoltà a capire cosa vuoi ottenere, quindi non posso aiutarti al momento ... – Chris
Significa che continui a scorrere e allo stesso tempo il cursore passa sopra l'ancora . – user1365010