当onbeforeunload太快时

时间:2013-01-25 14:50:44

标签: javascript javascript-events onbeforeunload

我很想知道每个人对这个问题的看法是什么;看起来它有可能是一个普遍的问题,所以它可能会帮助其他人。

在特定页面上提交任何表单按钮后,客户端的网站都有一个简单的onclick功能,可显示带有加载gif的整页覆盖图。除了用户点击后退按钮外,它非常适合提供类似ajax的用户体验。由于页面翻转时会显示加载叠加层,因此浏览器会记住此版本的页面并立即从其缓存中加载页面,并显示叠加层。理想情况下,可以在页面切换之前触发onbeforeunload以删除加载叠加层,但它也会在onclick的同时执行而不会给叠加层显示机会。 (至少在moz中,也许其他浏览器不这样做?)。

我过去使用的偷偷摸摸的解决方法是在调用后3-4秒使用setTimeout,但是当表单处理中包含文件上传或其他耗时的活动时,这在移除加载覆盖图之前没有给它足够的时间。

如果不在表单和目标页面之间添加专用的重定向页面,是否有人有关于如何在JS中解决此问题的想法?设置cookie以显示表单已提交是一个可靠的跨浏览器选项,因为立即后退点击通常会从浏览器的缓存中按原样触发吗?

谢谢!

0 个答案:

没有答案