繁体   English   中英

JavaScript + onunload事件

[英]JavaScript + onunload event

我想触发onunload事件来执行一些清理操作,我有多个选项卡(导航栏)显示了指向不同网页的多个链接,我的问题是,即使在其他页面中,我的卸载功能也位于某些标签中其他jsp被解雇。 请帮助解决此问题,我希望在用户关闭该页面中的浏览器时调用卸载功能。

我不确定您如何使onunload事件正常工作。...使用onunload事件发现的问题是页面卸载后将其触发。 这意味着无法再执行JavaScript,因为页面已被卸载。

您应该考虑使用onbeforeunload事件。 该事件有点独特,因为如果处理该事件的函数返回任何内容,则会显示一个弹出窗口,询问用户是否要继续操作。 因此,请确保您的函数不返回任何内容。 关于onbeforeunload事件要注意的另一件事是,Opera目前不支持该事件(但是Safari,FireFox和Internet Explorer支持)。

每次卸载页面时,都会执行onbeforeunload和onunload事件。 如果页面上的控件将该页面提交给服务器代码,则该页面将被卸载并执行JavaScript。

如果您不希望在页面上的控件将JavaScript提交到服务器时执行JavaScript,则必须实施一些检查以查看是否应执行代码。

这很简单,向页面添加一个JavaScript布尔值,并将此布尔值设置为true的函数。 确保页面中回发到服务器代码的每个元素在提交页面之前将此布尔值都设置为true。 在onbeforeunload事件中检查此布尔值,以查看是否应执行清理代码。

希望这可以帮助,

-弗林尼

似乎已在全局范围内创建了卸载功能。 尝试仅将该功能放在您要执行的页面上。

您有框架集页面吗? 您想在他们离开框架集时得到通知吗? 在框架集上添加onbeforeunload。 我不知道清理的含义,但是您无法在跨浏览器安全卸载期间发送XHR

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM