Задать вопрос
xoma2
@xoma2
Программист

Как отследить нажатие кнопки «Назад» браузера?

Я смог отследить backspace
$(document).keydown(function (e) {
            if(e.keyCode == 8){
                e.preventDefault();
                $('.go').find('input[name="back"]').val(1);
                $('.go').submit();
            }
        });


И отправить форму, тоже самое нужно для кнопки назад
  • Вопрос задан
  • 25092 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
addEventListener("popstate",function(e){
    alert('yeees!');
},false);
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
IonDen
@IonDen
JavaScript developer. IonDen.com
На обычной странице вы никак не можете отследить подобное нажатие. Все что вы можете узнать - это то, что пользователь пытается покинуть страницу. Для этого вам нужен метод window.onbeforeunload.
Ответ написан
@l_mikhail
Если используете реакт, отследите событие удаления компонента (метод componentWillUnmount()) на классовом компоненте или используйте хук useEffect

useEffect(
() => {
тут что-то происходит после рендера
return () => {
а вот здесь можно запустить то, что Вы хотели отследить при нажатии кнопки "назад" в браузере
};
},
[props.source],
);
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 10:02
7000 руб./за проект
18 дек. 2024, в 09:56
8000 руб./за проект
18 дек. 2024, в 04:59
1000 руб./в час