我正在浏览器的后退按钮上重新加载当前的aspx页面。
我有以下代码在IE11中运行。
window.onbeforeunload = function (evt) {
if (window.event) {
if (window.event.clientX < 40 && window.event.clientY < 0) {// Back button/IE
window.location.href = window.location.href; // not using window.location.reload() as I dont want to submit the form
}
}
};
这很好但我在这里得到了一个奇怪的行为。当我在window.onbeforeunload中添加调试器并调试代码时,它会成功重新加载当前页面而不是返回上一页。但是当我正常运行它(没有添加调试器)时,它就无法工作。
我尝试添加超时
setTimeout(function () { window.location.href = window.location.href; }, 3000);
但这也行不通。
我在提交表单时搜索了e.preventDefault()
之类的一些方法,但这些方法似乎都不适用于此。
任何人都知道如何解决此问题或以其他方式实现此目标?