Показать сообщение отдельно
  #1 (permalink)  
Старый 15.12.2011, 00:39
Профессор
Отправить личное сообщение для Dorian_bs Посмотреть профиль Найти все сообщения от Dorian_bs
 
Регистрация: 24.03.2011
Сообщений: 217

Ajax. Работа с историей. Отследить нажатие "назад/вперед"
Всем привет. При написании сайта на ajax столкнулся с проблемой.
Допустим, при нажатии на текст происходит загрузка нового "body" и меняется текст адресной строки с "/" на "/test" используя следующий код

history.pushState(null, null, 'test');


При обновлении страницы браузер автоматический переход на страницу "/test". Так как самой страницы "test" в html не существует, а является лишь адресом, я установил переадресацию на главную страницу (на ней всё происходит). При загрузке главной страницы я определяю, с какой страницы мы пришли:
document.referrer

и выполняю через условие соответствующую загрузку контента.

Тут и появляется проблема. Как сделать управление историей? Кнопками назад / вперед.
Сам браузер помнит, что предыдущая ссылка была "/", а сейчас "/test" при переходе назад / вперед. Но как отследить этот переход? Нажатие клавиш иль кнопок для выполнения условия сравнения адреса.
Ответить с цитированием