AngularJS + Safari: Die Seite wird gezwungen, beim Seitenwechsel nach oben zu scrollen

Ich habe ein seltsames Bildlaufverhalten, das nur auf Safari mit AngularJS angewendet wird.

Immer wenn der Benutzer zwischen Seiten wechselt, werden die Seiten so geändert, als wären sie AJAX. Ich verstehe, dass sie in AngualrJS sind, aber das resultierende Verhalten ist, dass der Browser nicht nach oben scrollen kann, wenn der Benutzer die Seite wechselt.

Ich habe versucht, den Browser zu zwingen, nach oben zu scrollen, wenn ein neuer Controller verwendet wird, aber er scheint nichts zu tun.

Auf jedem Controller wird der folgende JS ausgeführt:

document.body.scrollTop = document.documentElement.scrollTop = 0;

Dies ist auch ein Fehler, der nur für Safari gilt. Jeder andere Browser wird nach oben scrollen, wenn sich die Seite ändert. Hat jemand ein ähnliches Problem festgestellt oder einen besseren Weg zur Lösung gefunden?