Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> History events
flashdev
post
Post #1





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Wie ktoś jak to jest zrobione np. na fecebook`u to, że skrypt potrafi wykryć kiedy użytkownik przechodzi do strony wstecz?
Mam dynamiczną stronę, na której treść jest ładowana przez js i kiedy przechodze do jakiejś podstrony to zmieniam adres na adresstrony.pl/#podstrona.
Chciałbym wykryć kiedy użytkownik przechodzi wstecz/dalej używając nawigacji przeglądarki i zaserwować mu odpowiednią treść.
Na facebooku jest to wogóle w niezrozumiały dla mnie sposób rozwiązane, ponieważ zmienia się adres w przeglądarce przed znakiem '#', a mimo to strona nie jest wcale odświeżana.
Oszczędzi mi ktoś zabawy w reverse engineering i poda link do jakiegoś wytłumaczenia?
Z góry dzięki.

Wykrycie zmiany adresu naturalnie mógłbym zrealizować przy pomocy setInterval, ale z oczywistych względów tego rozwiązania chciałbym uniknąć.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
flashdev
post
Post #2





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Właśnie o to chodziło co napisał @melkorm.
Tu jest wszystko wyjaśnione:
https://developer.mozilla.org/en/DOM/Manipu...browser_history
Facebook właśnie też tą "magię" stosuje, że zmiania się adres w pasku a strona pozostaje nieodświerzona. I też sobie przypomniałem, że widziałem to już na githubie.

@kamil4u co do tego rozwiązania, które wyżej zamieściłem, oczywiście ono działa, ale:
- jest nieeleganckie
- tak jak już zauważyłeś niepotrzebnie obciąża przeglądarkę (jedna strona niewiele, ale wiele otwartych już bardziej). Ogólnie moim zdaniem strona, która nie jest aktualnie używana tylko jest sobie w zakładce w tle nie powinna zmuszać procesora do jakiejś pracy (patrz punkt pierwszy). Małe obciążenie - co powiesz o urządzeniach mobilnych?
- po trzecie istnieje ryzyko niewykrycia takiego zdarzenia

Jeśli napiszę coś przydatnego, to oczywiście podzielę się.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 20:12