Есть событие под названием window.onhashchange
, хотя не все его поддерживают, но ... есть плагин от Ben Alman для решения этой проблемы.
Плагин заставляет его работать в кросс-браузерном режиме, используя window.onhashchange
(собственное событие), если он там есть.Если нет, то он опрашивает каждые 50 мс и запускает само событие, если хэш изменяется.Используя плагин , ваш код будет выглядеть так:
$(window).hashchange(function() {
var loc = window.location.hash;
if(loc != '') $(loc).click();
});
Вам просто нужен этот код в одном месте.Вы можете запустить его один раз в document.ready
, просто запустив событие после его привязки, как описано выше, выполнив следующее:
$(function(){
$(window).hashchange();
});