Mam window.history.replaceState(null, null, 'about');
w main.js
, które znajdują się na moim serwerze na .replaceState(): stan historii z adresem URL ... nie można utworzyć w dokumencie o oryginalnym kodzie
Następnie na stronie o nazwie (znajduje się w /
(root) na moim serwerze), mam link, który używa window.history.replaceState(null, null, 'about:me');
na tej stronie. Wszystko działa poprawnie, ale po kliknięciu na innym linku z tej samej funkcji, ale z about:girlfriend
jako URL, Dostaję komunikat o błędzie:
Uncaught SecurityError: Failed to execute 'pushState' on 'History': A history state object with URL 'about:girlfriend' cannot be created in a document with origin 'http://my.domain.com'.
nie wiem dlaczego moja przeglądarka (najnowsza wersja Chrome) sądzę, że próbuję dotrzeć do tej strony, używając pushState
i nie wiem, dlaczego otrzymuję ten komunikat o błędzie, niezależnie od tego, ile razy go przeczytałem. Czy ktoś może mi to wyjaśnić? Nie używam do tego celu History.js
.
Warto wspomnieć, że nie otrzymuję tego komunikatu o błędzie, jeśli zmienię :
na coś innego, na przykład -
lub /
. Chcę użyć :
, ponieważ /
nie działa (nie znaleziono strony 404), a -
nie pasuje - lepiej z :
.
Czy kiedykolwiek rozwiązać ten problem, bo mam dokładnie ten sam problem w moim projekcie teraz . – najk
możliwy duplikat [Historia JavaScript.PushState nie działa?] (Http://stackoverflow.com/questions/20079704/javascript-history-pushstate-not-working). Pamiętaj też, że ten błąd wystąpi, jeśli próbujesz wyświetlić lokalnie stronę. Strona musi przejść przez serwer HTTP do pracy, więc jeśli otworzysz plik index.html w przeglądarce z dysku twardego, pojawi się ten błąd. – davidcondrey