Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   вызов функции при смене url (https://javascript.ru/forum/events/20630-vyzov-funkcii-pri-smene-url.html)

vvsh 11.08.2011 18:01

вызов функции при смене url
 
здравствуйте.
в приложении меняются url, допустим:
#/photos
#/albums
#/settings

у body есть событие onload, при загрузке страницы оно срабатывает и вызывается функции load, в этой функции парсится window.location.url и дальше согласно url генерится контент.
как сделать чтобы оно вызывалось не при загрузке страницы, а если например юзер в браузере нажмет назад, то адрес сменится с #/photos на #/albums например, и должна вызваться функция. спасибо.

ваый 11.08.2011 18:13

Такого события нету (пока). Если есть jquery то там можно использовать искуственное событие.
$(window).bind('hashchange', function() {
    alert('changed');
});

Если нету jquery то проверяем location.hash переодически и сравниваем с предыдущим.

vvsh 11.08.2011 18:31

нашел, есть событие onhashchange у window, какие браузеры поддерживают?

ваый 11.08.2011 18:54

мозила и ие8

vvsh 11.08.2011 19:01

проверил chrome/opera/mozilla/ie/safari везде работает и наткнулся на статью http://help.dottoro.com/ljgggdjt.php
тут
Цитата:

The onhashchange event is supported in Internet Explorer from version 8, in Firefox from version 3.6, in Opera from version 10.6 and in Safari from version 5
в общем спасибо.


Часовой пояс GMT +3, время: 02:08.