有没有办法检测/捕捉浏览器后退按钮被按下,并这样做询问他们是否确定要回去?
构建一个应用程序,它很快就会被转换为一个基于ajax的应用程序,并且根据用户要求重新启动应用程序,如果用户回来了......
我主要希望这能抓住意外的后退按钮,因为我个人觉得如果有人不能按照应用程序开始时给他们的指示......我不是担心他们的额外工作。
如果没有办法做到这一点,那么最佳解决方案是在新的窗口/标签中启动应用程序,以便它没有历史记录可以返回吗?
答案 0 :(得分:3)
您可以使用onbeforeunload
来检测后退按钮或意外页面导航:
window.addEventListener("beforeunload", function() {
var ans = confirm("Are you sure?");
if (ans) {
//TODO: add your code here
}
}, false);
要替换浏览器历史记录中的当前页面,您可以使用window.location.replace()
:
window.location.replace("yourNewURL");
答案 1 :(得分:0)
您也可以像这样设置onbeforeunload
功能:
window.onbeforeunload = function() {
return "Are you sure you wish to leave?";
};