Мой сайт отлично работает со всеми страницами, загруженными ajax, и записи истории для них, сохраненные с использованием pushState и history.js.
Обработчик событий statechange отлично работает, пока я на сайте,позволяя мне перемещаться назад и вперед между страницами, которые я посещаю, правильно используя функциональность ajax.
Это сценарий, который не работает в Chrome или Firefox (но отлично работает в IE и Edge):
начните с www.someothersite.com
перейдите по адресу www.mysite.com/blog
нажмите на ссылку игры, и ajax работает, и я нахожусь на www.mysite.com/ games
нажмите назад и снова это сработает, и я нахожусь на www.mysite.com/blog
если я снова нажму, я снова на www.someothersite.com
Я нажимаю вперед и возвращаюсь на www.mysite.com/blog (отлично!)
, но когда я снова нажимаю вперед, страница полностью обновляется, и хотя я нахожусь там, где хочубыть (www.mysite.com/games) ajax не работает.
Еслиотсюда я нажимаю на ссылку на моем сайте, после чего работает ajax, но при переходе назад к истории, которая была создана из моего первоначального текста на моем сайте, всегда будет происходить полное обновление страницы в Firefox и Chrome (хотя она отлично работает в IE иEdge).
Насколько я могу судить (в Chrome и Firefox), событие popstate не запускается, когда я нажимаю назад или вперед, чтобы перемещаться по старым состояниям на моем сайте, после того как у меня естьотошел от моего сайта и вернулся обратно. Если я создаю новые состояния, как только я вернулся, они работают нормально, но старые продолжают не работать
Другое отличие, которое я заметил в Firefoxа Chrome хранит запись истории для www.mysite.com перед перенаправлением на www.mysite.com/blog, интересно, может ли это быть связано?