我试图在离开页面之前绑定一个事件,但是除了按下后退按钮时。
这是我的活动代码:

    window.onbeforeunload = (e) => {

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


它可以工作,但是可以绑定,并且可以在按下后退按钮时绑定。当然,这是正常的逻辑,但是我需要找到一种检查方法,是否在onbeforeunload中按下了后退按钮。像这样:

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

最佳答案

我认为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变量是否为true,然后它将执行您的代码。每当单击后退按钮的值更改时,isBackButton变量都设置为true。

09-10 01:03