Domanda

Scroll.js è usato per il blocco #bird, che segue lo scorrimento della pagina.

Il problema principale: funziona, se rimuovo la linea Doctype, questa:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

e non funziona se doctype è attivo.

Ecco l'html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <script src="jquery.js" type="text/javascript"></script>
    <script src="scroll.js" type="text/javascript"></script>
</head>

<body>
<div style="position:relative; height:20000px">
    <div id="bird" style="position:absolute;left:0;top:20px;width:200px"></div>     
</div>
</body>
</html>

E js:

  

rimosso

Non chiedere di rimuovere il doctype, è necessario.

È stato utile?

Soluzione

Devi sostituirlo:

document.body.scrollTop

con questo:

document.documentElement.scrollTop

scrollTop appartiene all'elemento <html> in modalità standard, anziché all'elemento <body>.

(Nota che document.body.scrollTop appare tre volte nel tuo codice.)

Altri suggerimenti

c'è un problema sul div del tuo uccello, lo stile ha larghezza: 200 " ;, dovrebbe essere larghezza: 200px " (aggiungi le unità)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top