Итак, у меня есть код, который изменяет URL-адрес моей веб-страницы, когда click
происходит с определенным элементом.Это не перезагружает страницу.Причина этого заключается в том, что на мобильных устройствах можно использовать кнопку «Назад» для возврата в предыдущее состояние до изменения URL-адреса (единственное, что происходит, когда происходит это изменение URL-адреса, - это некоторые визуальные изменения, управляемые с помощью JS с помощью popstate
).Смена визуальных изображений вперед и назад работала хорошо, пока вы не перешли на другую веб-страницу и не нажали кнопку возврата.
Скажем, у меня изначально есть веб-страница, размещенная на Github с URL: https://testing.github.io
.Затем я добавил этот код для элемента в моем JS:
document.getElementById('target').addEventListener('click', e => {
//Change some visuals
let state = { //some state },
title = "new page",
path = "new-page";
history.pushState(state, title, path);
});
. Как видите, щелчок по указанному элементу target
изменит мой URL-адрес на https://testing.github.io/new-page
.Проблема возникает, когда я перемещаюсь в другое место с указанного URL, скажем https://google.com
, , затем нажимаю кнопку возврата .Я столкнусь с ошибкой «1014», потому что у меня нет этого файла в моем репозитории Github.Как мне решить эту проблему?