Peter: Firefox: Scrolposition und F5-Refresh

Tachauch,

ich hab im Firefox unterschiedliches Verhalten bei verschiedenen Seiten festgestellt, dass ich mir nihct erklären kann:

Es geht um Seiten, die länger als eine Fenstrgrösse sind, und daher einen Scrolbar haben.
Bei manchen der Seiten wird bei einem Refresh die Scrolposition beibehalten, bei anderen wird beim Refresh an den Anfang gesprungen.

Woran kann das liegen, bzw. wodurch kann ich das bei meinen eigenen Seiten so hinbekommen, dass beim Refresh die Scrolposition erhalten bleibt?

Danke!

Bis denne,
Peter

  1. Hi,

    Woran kann das liegen, bzw. wodurch kann ich das bei meinen eigenen Seiten so hinbekommen, dass beim Refresh die Scrolposition erhalten bleibt?

    So weit ich weiß:
    Bei Strg + R (oder F5) werden alle input-Felder und Textareas so belassen wie sie sind (es sei denn, das HTML-Dokument wurde in der Zwischenzeit verändert) und die Scrollposition bleibt erhalten.
    Beim Drücken von Enter in der Adresszeile wird alles zurückgesetzt und die Scrollposition auf 0,0 gesetzt.

    Wird in der URL ein "Ziel" angegeben (#bla) wird bei Enter die Seite nicht neu geladen, sondern nur auf #bla geleitet, bei Strg + R (oder F5) wird die Seite wirklich neu geladen.

    Gruß,
    Aarakast

    --
    sh:( fo:| ch:? rl:? br:^ n4:° ie:% mo:} va:} de:> zu:) fl:( ss:) ls:< js:|
  2. Hallo Peter,

    auch mir ist gelegentlich schon ein seltsames Verhalten beim Refresh in Firefox aufgefallen.

    Bei manchen der Seiten wird bei einem Refresh die Scrolposition beibehalten, bei anderen wird beim Refresh an den Anfang gesprungen.

    Hmm, das kann ich jetzt so nicht bestätigen. Nur bei Framesets springt er AFAIK wieder an den Seitenanfang, wenn man das gesamte Frameset aktualisiert.
    Aber mir ist aufgefallen, dass Firefox auch bei einfachen Seiten beim Reload nicht immer wieder an die Stelle hinspringt, wo er vorher war. Wenn die Seite vom Server dynamisch generiert wird und sich die Länge seit dem vorherigen Laden geändert hat, stimmt die Scrollposition nicht mehr. Mir scheint, der speichert sich intern nicht die absolute Position auf der Seite (z.B. "722px vom oberen Rand"), sondern relativ zur Seitenlänge.

    Beispiel: Die Seite hat nach dem Rendern eine Länge von 2400px, und ich scrolle so, dass der Punkt (0px,600px) an der oberen Fensterkante sitzt. Jetzt aktualisiere ich die Seite, sie ergibt aber nun nach dem Rendern eine Länge von 3200px. Dann scrollt der Firefox die Seite nach dem Neuladen an die Position (0px,800px), also relativ zur Seitenlänge an die gleiche Position wie vorher. Nur absolut betrachtet stehe ich ganz woanders.
    Das hat mich schon oft irritiert, z.B. auch hier mit der Forumshauptdatei.

    Woran kann das liegen, bzw. wodurch kann ich das bei meinen eigenen Seiten so hinbekommen, dass beim Refresh die Scrolposition erhalten bleibt?

    Verzichte auf Framesets und auf dynamische Änderung der Seitenlänge.

    So long,

    Martin