Перед страницей покинуть событие и кнопку назад - PullRequest
0 голосов
/ 18 апреля 2020

Я пытаюсь связать событие перед тем, как покинуть страницу, но за исключением случаев, когда нажата кнопка «Назад». Это мой код для события:

    window.onbeforeunload = (e) => {

    if(something){
        // do my custom code
    }
};

Работает, но привязывается и при нажатии кнопки назад. Конечно, это нормальная логика c, но мне нужно найти способ проверить, нажата ли кнопка возврата внутри onbeforeunload. Как то так:

if(something && !isBackButton){
        // do my custom code
}

1 Ответ

1 голос
/ 18 апреля 2020

Я думаю onbeforeunload будет работать лучше для вашей ситуации. Вы можете проверить intercept-page-exit-event

$(document).ready(function() {
    isBackButton = false; 
    window.onbeforeunload = backHandler;
});

function backHandler() {
    if (isBackButton) {
        // do something's
    }
}

$("button.back").click(function() {
    isBackButton = true;
});

Приведенный выше код проверяет переменную isBackButton, если она истинна, тогда он выполнит ваш код. При каждом изменении значения кнопки «Назад» значение переменной isBackButton устанавливается равным true.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...