Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: js history pushstate
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
chormi
Witam

Mam problem z przywróceniem adresu po użyciu history.pushState. Dajmy na to mam następujący adres:

strona.com/

Za pomocą ww. metody dopisuję do adresu "/site/subsite", więc adres wygląda teraz tak:

strona.com/site/subsite

Założmy, że zamykam zakładkę na stronie i potrzebuję usunąć "site/subsite" z adresu

próbowałem użyć "history.pushState("",document.title,document.location.path), ale location.path pokazuje cały adres "strona.com/site/subsite", więc adres pozostaje niezmieniony.

Jak zatem otrzymać adres(strona.com/) z przed użycia metody pushState?

Proszę o pomoc
mortus
Niestety HTML5 History API nie jest w tej chwili kompatybilne ze wszystkimi przeglądarkami, a szczególnie z IE. Nawet jeśli osiągniesz porządany efekt, to nie pod każdą przeglądarką będzie to działać. Do rozwiązania problemu może posłużyć zdarzenie onpopstate. Lepiej jednak użyć History.js dla pełnej kompatybilności ze wszystkimi przeglądarkami, przynajmniej tak sugerują developerzy Moziili.

I podobny wątek na stackoverflow.
chormi
Dzięki za odpowiedź, oczywiście wynalazki typu IE <9 ignoruję. Chodzi mi o samo wywołanie stanu z przed pushState,ale to sprawdzi się tylko w przypadku gdy użytkownik nie wejdzie na stronę z tzw "direct linka", bo wtedy to już będę musiał się bawić w cięcie stringów, bo na szczęście liczba parametrów w adresie jest stała, więc czy tak czy tak czeka mnie kombinowanie..
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.