@makaleks

Как обрабатывать историю переходов, совершаемых через правую кнопку мыши на стрелочках браузера?

Делаю SPA. Знаю про события pushstate/popstate, возможность имитировать перемещения по адресам без перезагрузки страницы. А что мы делаем, когда пользователь перемещается не по отдельным шагам, а сразу на несколько позиций в истории через правую кнопку мыши по стрелочкам в браузере - и хотим так же, без перезагрузки и с сохранением состояний тех окон/колонок, которые не затронула смена адреса - обрабатывать diff между начальным адресом и конечным?
64246a4269b11805323225.png

Спасибо
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
@makaleks Автор вопроса
Событие PopStateEvent возникает, на сколько бы позиций назад ни переходил пользователь. В себе событие содержит аттрибут state, в котором лежит то состояние, которое пользователь передавал в push_state. Таким образом, через это состояние можно определить, на сколько позиций назад вернулся пользователь, и избавляться от боли в зависимости от того, насколько функциональность много̶с̶т̶р̶а̶д̶а̶л̶ь̶н̶а̶я̶целевая
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы