Почему событие загрузки не срабатывает при нажатии кнопки «Назад/Вперед», в результате чего загрузчик остается видимым? ⇐ Jquery
Почему событие загрузки не срабатывает при нажатии кнопки «Назад/Вперед», в результате чего загрузчик остается видимым?
У меня есть веб-страница с загрузчиком, и я использую JavaScript, чтобы контролировать, когда ее следует отображать и скрывать. Загрузчик изначально отображается при загрузке страницы с помощью функции showLoader, а также он должен отображаться, когда пользователь уходит со страницы с помощью кнопок назад/вперед.
Чтобы управлять навигацией по кнопкам «Назад/Вперед», я использую прослушиватель событий beforeunload для вызова функции mustShowLoader. Эта функция проверяет, можно ли отменить событие, а затем планирует запуск функции showLoader после небольшой задержки (50 миллисекунд). Вот соответствующий фрагмент кода:
document.addEventListener("DOMContentLoaded", function () { const loaderWrapper = document.querySelector(".loader-wrapper"); функция showLoader() { loaderWrapper.classList.remove("скрытый"); } функция скрытьLoader() { loaderWrapper.classList.add("скрытый"); } функция должнаShowLoader(событие) { const cancelable = event.cancelable; если (isValid(отменяемо)) { setTimeout (showLoader, 50); } } функция isValid (formElement) { вернуть formElement !== null; } // Изначально показываем загрузчик шоуЗагрузчик(); window.addEventListener("load",ideLoader); window.addEventListener("beforeunload", mustShowLoader); }); В моем браузере все работало нормально, но в некоторых браузерах при нажатии кнопки «Назад/Вперед» beforeunload будет вызван вызов события и показ загрузчика, а мой загрузчик останется видимым. Событие load не будет вызвано. Я пытался использовать событие **popstate **, но это все равно видимый загрузчик.
window.addEventListener("popstate", function () { если (history.state === null) { // Скрываем загрузчик скрытьЗагрузчик(); } }); Я хочу решить эту проблему. Как это исправить. Будем очень признательны за любые идеи или предложения о том, как правильно запустить загрузчик при использовании кнопок «Назад» и «Вперед».
Спасибо
У меня есть веб-страница с загрузчиком, и я использую JavaScript, чтобы контролировать, когда ее следует отображать и скрывать. Загрузчик изначально отображается при загрузке страницы с помощью функции showLoader, а также он должен отображаться, когда пользователь уходит со страницы с помощью кнопок назад/вперед.
Чтобы управлять навигацией по кнопкам «Назад/Вперед», я использую прослушиватель событий beforeunload для вызова функции mustShowLoader. Эта функция проверяет, можно ли отменить событие, а затем планирует запуск функции showLoader после небольшой задержки (50 миллисекунд). Вот соответствующий фрагмент кода:
document.addEventListener("DOMContentLoaded", function () { const loaderWrapper = document.querySelector(".loader-wrapper"); функция showLoader() { loaderWrapper.classList.remove("скрытый"); } функция скрытьLoader() { loaderWrapper.classList.add("скрытый"); } функция должнаShowLoader(событие) { const cancelable = event.cancelable; если (isValid(отменяемо)) { setTimeout (showLoader, 50); } } функция isValid (formElement) { вернуть formElement !== null; } // Изначально показываем загрузчик шоуЗагрузчик(); window.addEventListener("load",ideLoader); window.addEventListener("beforeunload", mustShowLoader); }); В моем браузере все работало нормально, но в некоторых браузерах при нажатии кнопки «Назад/Вперед» beforeunload будет вызван вызов события и показ загрузчика, а мой загрузчик останется видимым. Событие load не будет вызвано. Я пытался использовать событие **popstate **, но это все равно видимый загрузчик.
window.addEventListener("popstate", function () { если (history.state === null) { // Скрываем загрузчик скрытьЗагрузчик(); } }); Я хочу решить эту проблему. Как это исправить. Будем очень признательны за любые идеи или предложения о том, как правильно запустить загрузчик при использовании кнопок «Назад» и «Вперед».
Спасибо
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Создание списка данных HTML5 видимым, когда событие фокуса срабатывает при вводе
Anonymous » » в форуме Html - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Создание списка данных HTML5 видимым, когда событие фокуса срабатывает при вводе
Anonymous » » в форуме Jquery - 0 Ответы
- 12 Просмотры
-
Последнее сообщение Anonymous
-