2010-02-02 11 views
10
window.location.reload() 
history.go(0) 
window.location.href=window.location.href 

Zauważyłem, że strona internetowa komentuje, że wszystkie 3 z tych metod można wykorzystać do przeładowania strony. Nie zadowoliłem się zaufaniem, próbowałem wszystkich 3 metod w IE8, FF3 i Opera 10. Zauważyłem, że firefox wykonał przeładowanie pamięci podręcznej zamiast prawdziwego przeładowania dla history.go (0), ale poza tym nie widział różnic. Jednak myślałem, że zapytam społeczność, jakie są różnice między tymi metodami.Różnice między metodami przeładowywania stron

+0

history.go (0) poprawnie korzysta z pamięci podręcznej, jak zrobiłby to przycisk powrotu. – dusoft

Odpowiedz

10

Główna różnica między window.location.reload() i window.location.href = window.location.href to, że pierwszy ponownie wyświetli dane POST, jeśli istnieje (przeglądarka zapyta, czy chcesz przeładować stronę i ponownie wysłać dane), druga zmieni po prostu adres URL ignorując dane POST.

Jeśli chodzi o history.go (0), używamy obiektu historii, więc przeglądarki mogą używać buforowanej wersji strony, przechowywanej gdzieś w pamięci.

Powiązane problemy