Как определить, изменится ли location.hash от кнопки "Назад" или нет - PullRequest
1 голос
/ 24 июня 2011

Я создаю веб-приложение, используя плагин истории, который отображает фрагменты url, такие как mysite.com/#news, в представления.Это мобильное приложение JavaScript на HTML5, и при переходе от mysite.com/#news к mysite.com/#stuff между страницами появляется приятная скользящая анимация справа налево.Все хорошо.

Затем пользователь нажимает кнопку «Назад» в браузере, и местоположение меняется на / # news, и ожидаемый переход будет слева направо.Но как я могу узнать, что нажата кнопка «назад», а не «вперед» или какая-то ссылка нажата?

Плагин истории просто запрашивает изменение хеша - он понятия не имеет, что его вызвало.Я не могу найти ни одного полезного нативного события для привязки и защиты, блокирующего доступ к массиву window.history.

Есть ли способ сделать это?

1 Ответ

1 голос
/ 24 июня 2011

Я бы на каждой странице сохранял, на какой странице я находился и с какой страницы пришел в cookie или хранилище, а затем смотрел, на какой предыдущей странице я находился. То есть сохранить мою собственную историю на моем сайте. Это можно объединить с неуловимым document.referrer, чтобы увидеть, попал ли я на страницу без реферера, что может быть признаком того, что я использовал закладку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...