Javascript onbeforeunload在用户单击某个内容时会弹出一个警报框
我创建了一个页面,当用户单击窗口上的(关闭x)按钮时会发出警告。我读了一些书,发现javascript有一个名为onbeforeonload的函数,可以完成我试图实现的任务。然而,在我的实现之后,我发现,当用户单击我窗口中的任何内容(例如.save and enter)时,对话框会重新出现。我想知道为什么我只能瞄准窗口中的特定X按钮Javascript onbeforeunload在用户单击某个内容时会弹出一个警报框,javascript,javascript-events,Javascript,Javascript Events,我创建了一个页面,当用户单击窗口上的(关闭x)按钮时会发出警告。我读了一些书,发现javascript有一个名为onbeforeonload的函数,可以完成我试图实现的任务。然而,在我的实现之后,我发现,当用户单击我窗口中的任何内容(例如.save and enter)时,对话框会重新出现。我想知道为什么我只能瞄准窗口中的特定X按钮 window.onbeforeunload = function (evt) { var message = 'Do you want to leave
window.onbeforeunload = function (evt) {
var message = 'Do you want to leave?';
if (typeof evt == 'undefined') {
evt = window.event;
}
if (evt) {
evt.returnValue = message;
}
return message;
}
现在正在全局调用该函数。。。此资源可能会帮助您实现所需目标:这是IE的“按预期工作”行为。锚定标记单击,无论是否导航,都将触发 这是我使用的解决方法-我不确定这是否是最好的方法:
document.onmouseup = function () {
if (window.event.srcElement.tagName === 'A') {
// turn off your onbeforeunload handler
...
// some small time later, turn it back on
setTimeout(..., 200);
}
};
如果你澄清这个问题会有帮助的。参见