Diese Sprungfunktion ist über die #Anker (siehe URL nach dem Laden der Seite) realisiert.
Vorteil dieser Lösung ist, dass sie ohne Javascript auskommt und der Browser nach dem Laden an die richtige Position springt.
Nachteil ist, dass zum Springen der Seitenaufbau schon so weit berechnet sein muss, dass erkannt werden kann, wo der Anker überhaupt platziert ist. Diese Berechnung erfordert aber manchmal zu viel Zeit, weil nicht alle Daten zügig genug über die Leitung fließen. Dann versucht der Browser zu schätzen und muss sich später korrigieren.
Beispielsweise muss ein Bild (oder zumindest ein Teil) erst vom Server geladen sein, damit er dessen Abmaße bestimmt werden können. Aber auch CSS-Dateien oder von Browseraddons vorgegebene Schriftarten-Informationen, etc können das Rendering beeinflussen.
Beim FF besteht meiner Meinung nach die Strategie darin, erst die Position des Ankers zu schätzen und nach dem vollen Laden der Seite erneut zum Anker zu springen. Müsste eigentlich bei allen anderen Browsern ähnlich sein.
Du könntest versuchen Scroll-Events zu vermeiden bis die Seite komplett geladen ist. Könnte Scrollen bei dir die Ursache sein? So ein Event wird den zweiten Sprung zum Anker unterbinden.
Per Forensoftware würde ich dieses Verhalten nicht beeinflussen