我正在制作警报功能时遇到问题。仅当用户按下“后退”按钮时才会发出警报。问题在于,当用户尝试关闭页面时也会显示警报。有任何解决这个问题的方法吗?这是代码。我通过在所有单击的链接上将Boolean设置为true来完成此工作,这将关闭警报。
编辑:对于任何抓住它的人,是的,缺少引号。那只是我在这里编辑代码并意外删除引号。这实际上不是问题,我在此处的代码中对其进行了修复。
<script>
var okayToLeave = false;
window.onbeforeunload = function () {
if (!okayToLeave) {
return "By going back, you risk submitting your order twice."
}
}
function OkayToLeave() {
okayToLeave = true;
}
最佳答案
缺少“
在以下行中:return "By going back, you risk submitting your order twice."
编辑:
您的OkayToLeave
方法应定义onbeforeunload
。
因此,除了将值设置为true之外,您还应该考虑添加该事件。
编辑2:
这是一个代码示例:
function NotOkayToLeave() {
window.onbeforeunload = function () {
return "By going back, you risk submitting your order twice.";
};
};
function OkayToLeave() {
window.onbeforeunload = null;
};