@Kyber_Ded

Как поймать событие обновления (перезагрузки) страницы?

Есть 2 вкладки.
При закрытии одной, по событию onunload, передает данные в другую.
Но есть проблема. onunload срабатывает также и на перезагрузку страницы.

Вопрос встал, как отловить событие именно перезагрузки? Через keydown и код клавиши не пойдет, потому что пользователь также может и нажать на кнопку перезагрузки страницы в браузере.
  • Вопрос задан
  • 6849 просмотров
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Такого события нет. И решения задачи, как она поставлена, лично я не вижу.

Но вероятно вам не обязательно нужно передавать данные при закрытии. Возможно подойдет синхронизация данных между открытыми вкладками вашего домена.
Посмотрите здесь https://habr.com/ru/company/rambler_and_co/blog/422545/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@mikhailivanko
document.addEventListener("DOMContentLoaded", function(){
 //if IsRefresh cookie exists
 var IsRefresh = getCookie("IsRefresh");
 if (IsRefresh != null && IsRefresh != "") {
    //cookie exists then you refreshed this page(F5, reload button or right click and reload)
    //SOME CODE
    DeleteCookie("IsRefresh");
 }
 else {
    //cookie doesnt exists then you landed on this page
    //SOME CODE
    setCookie("IsRefresh", "true", 1);
 }
})

Как добавлять и удалять кукисы думаю понятно.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы