Событие Popstate не запускается при переходе вперед по истории после перехода обратно на мой сайт в Chrome и Firefox (работает в IE и Edge) - PullRequest
0 голосов
/ 20 февраля 2019

Мой сайт отлично работает со всеми страницами, загруженными 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, интересно, может ли это быть связано?

...