在后退按钮上设置变量点击

时间:2015-08-01 22:45:55

标签: javascript jquery browser

如果单击broswer后退按钮,我有一个我不想运行的功能。我试图使用类似下面的内容:

var backButtonClicked = false;

window.onpopstate = function() {
    alert("Back clicked");
    backButtonClicked = true;
}; 

然后我试图使用变量,如:

if(!backButtonClicked) {
   //run function if not back button clicked
}

然而,使用上面的代码,当我点击后退按钮时,警报不会被触发。

window.onpopstate = function() {
    alert("back clicked");
    backButtonClicked = true;
};
history.pushState({}, '');

使用上面的代码,单击后退按钮时会触发警报,但是除非我第二次单击后退按钮,否则浏览器不会导航回上一页。我在这里做的事情是不正确的还是有更好的方法来实现我想做的事情?

1 个答案:

答案 0 :(得分:0)

当我没有时间打字时,我的编码技巧不是很好。但也许事件探测器可能是你可以考虑的问题的另一种方法?

来自优秀来源的示例和参考: http://www.w3schools.com/js/js_htmldom_eventlistener.asp

希望这有帮助,祝你好运!