[JavaScript] Scrollposition
-
Hallo,
da der aktuelle Internet Explorer kein "position: fixed;" im CSS beherrscht will ich diesen Umstand mit JavaScript umgehen. Dazu muss ich aber die aktuelle Scrollposition herausfinden. Beim Mozilla ist das ja ganz einfach, aber für den IE habe ich noch keine Möglichkeit gefunden (probiere schon seit ~2 Stunden rum :/). Weiß einer, ob das überhaupt möglich ist, wenn ja, wie?
Danke
-
am besten du lässt es sein und machst:
position:absolute;
position:fixed;und die alten browser stellen es halt absolute da - aber mit JS ist eine schlechte möglichkeit! da verlierst du ja die trennung von design und text!
-
Im Grunde gebe ich dir recht, aber in diesem Fall sieht die Sache etwas anders aus: Die Seite wird in einem <object> Tag frameartig angezeigt und dort sollen eben oben links einige Informationen stehen, die eben unabhängig von der Scrollposition sein sollen.
-
document.body.scrollTop
Du könntest aber auch einfach unterhalb des Menüs ein div mit overflow-Angabe machen (für den scrollbaren Bereich)
-
document.body.scrollTop.. muss man noch etwas machen, damit das zur Verfügung steht? Ich habe es mit folgenden Code ausprobiert, allerdings hat es, egal wohin ich gescrollt hatte, immer 0 zurückgegeben:
<script type="text/javascript">
setTimeout("Movv()",10000);function Movv()
{
alert(document.body.scrollTop);
}
</script>
-
Eigentlich sollte das direkt funktionieren.
Ich hab dir mal zum Test eine Seite (!Achtung kein gültiges HTML-Dokument!) etwas gebastelt, was im IE funktioniert (bei mir zumindest)<html> <body onclick="alert(document.body.scrollTop);"> <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> </body> </html>
-
Hm, ich habe jetzt herausgefunden woran es liegt: Ich arbeite in meinem Projekt mit XHTML 1.1 Strict. Nachdem ich die DocType-Angabe entfernt habe, funktionierte document.body.scrollTop wie es soll.