gpt4 book ai didi

javascript - 返回事件函数导致弹出警报

转载 作者:行者123 更新时间:2023-11-30 12:12:08 24 4
gpt4 key购买 nike

我正在关注一本关于 JavaScript 的书。令我困惑的页面如下:http://javascriptbook.com/code/c06/html5-events.html .

当用户按下“下一步”按钮时,会触发一个事件。这是指定事件监听器的代码:

window.addEventListener('beforeunload', function(event) {
var message = 'You have changes that have not been saved';
(event || window.event).returnValue = message;
return message;
})

此代码会产生一个警报,并让我留在这个页面离开。我不明白这里的语法。我认为警报是用 alert() 函数发出的。发生了什么事或在这里?感谢您的帮助

最佳答案

此代码返回一条消息,因此浏览器会负责确认用户的导航(或关闭)事件,这也是您收到浏览器特定警报的原因。

window.addEventListener('beforeunload', function(event) {
var message = 'You have changes that have not been saved';
(event || window.event).returnValue = message;
return message; // alerts with this message.
});

如果您尝试下面的代码,它不会返回消息,那么您将不会收到确认提示框,但您仍然可以捕获事件并执行操作。

window.addEventListener('beforeunload', function(event) {
//var message = 'You have changes that have not been saved';
//(event || window.event).returnValue = message;
localStorage.eventCaptured = 'eventCaptured without alert'; // gets saved to localStorage
//return message;
})

关于javascript - 返回事件函数导致弹出警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33464160/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com