AngularJS + Safari: wymusza przewijanie strony do góry, gdy strony się przełączają

Korzystam z dziwnego, przewijanego tylko przez safari zachowania przy użyciu AngularJS.

Za każdym razem, gdy użytkownik przełącza się między stronami, strony są zmieniane tak, jakby były AJAX. Rozumiem, że są w AngualrJS, ale wynikłe z tego zachowanie polega na tym, że przeglądarka nie przewija się do góry, gdy użytkownik przełącza strony.

Próbowałem zmusić przeglądarkę do przewijania do góry za każdym razem, gdy używany jest nowy kontroler, ale nie wydaje się, aby cokolwiek robił.

Używam następującego JS na szczycie każdego kontrolera:

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

Jest to również błąd tylko w przeglądarce Safari, każda inna przeglądarka przewija się do góry po zmianie strony. Czy ktoś napotkał podobny problem lub wymyślił lepszy sposób na jego rozwiązanie?

questionAnswers(9)

yourAnswerToTheQuestion