2013-01-07 8 views
6

Czy jest jakiś event, który jest generowany, gdy tekst paska adresu jest modyfikowany przez użytkownika? Podobnie, gdy użytkownik próbuje uruchomić javascript za pomocą paska adresu.Czy mogę uzyskać zdarzenie po zmodyfikowaniu paska adresu?

Sprawdziłem wszystkie zdarzenia window, żaden z nich nie dotyczy paska adresu.

Aktualizacja

Zgodnie komentarzach, próbowałem window.onhashchange, ale tylko pożary w przypadku zmiany hash, nie dla rzeczywistej zawartości.

Powód, dla którego potrzebuję tego, aby znaleźć sposób na powstrzymanie użytkownika przed wykonywaniem javascript z paska adresu. Tak więc rozwiązanie zegara nie zadziała.

Czy jest jakiś sposób, aby złapać onbeforeunload i ustawić lokalizację z powrotem na poprzednią?

+1

http://stackoverflow.com/questions/1930927/how-can-i-detect-an-address-bar-change-with-javascript – Quannt

+0

Nie duplikat, drugie pytanie dotyczy zmiany hash i nie zadziała dla mnie. – ATOzTOA

Odpowiedz

2

Nie ma takiego zdarzenia (native mam na myśli)

Oto przedmiot o tym, jak zrobić imprezę ze zmian lokalizacyjnych okna (używa setInterval):

http://www.bennadel.com/blog/1520-Binding-Events-To-Non-DOM-Objects-With-jQuery.htm

Jeśli” re przy użyciu ajax, może chcesz sprawdzić to:

http://www.asual.com/jquery/address/

+0

Widziałem ten, używając metody setInterval(), szukałem czegoś już dostępnego na platformie. – ATOzTOA

+0

Ponadto, setinverval działa tylko wtedy, gdy potrzebne są jakiekolwiek zmiany w mieszaniu, nadal pozostające na tej samej stronie. – ATOzTOA

1

Nie ma nikogo takiego t Rick, ale może window.onbeforeunload może ci pomóc. Dzięki temu możesz wiedzieć przynajmniej, kiedy użytkownik opuści twoją stronę.

Zobacz przykład tutaj: http://www.4guysfromrolla.com/demos/OnBeforeUnloadDemo1.htm

+0

Mimo to, nawet jeśli złapię zdarzenie 'onbeforeunload', nie będę mógł zatrzymać użytkownika, prawda? – ATOzTOA

+0

Nie możesz go zmusić, ale możesz go o to poprosić. Zostanie wyświetlone okno z pytaniem, czy naprawdę chce odejść. – Itchy

+0

Czy mogę przekierować stronę z powrotem do oryginału po uruchomieniu komendy 'onbeforeunload'? – ATOzTOA

Powiązane problemy