【发布时间】:2018-04-19 18:54:12
【问题描述】:
我有一个用户进度数据存储在我定期提交的表单中,或者在应用程序的某个顺序或退出按钮上。
我面临的问题是,如果用户浏览应用程序,然后直接关闭浏览器窗口(而不是单击应用程序中的退出按钮),用户进度数据会丢失,因为表单提交不起作用并且浏览器窗口在此之前关闭。
我尝试了以下方法,它在 Chrome 中运行良好:
function listenForUnloadEvent()
{
$(window).on('beforeunload', function ()
{
... trackBeforeExitCourse();
}
}
function prepareForm() {
.....
$(window).bind('beforeunload', function () {
myForm.submit();
});
}
但是,上面的代码在 Safari 或 Firefox 上不起作用。
客户端不想在尝试关闭窗口时显示任何警告消息,而是希望我们提交表单并存储用户进度数据。
任何帮助将不胜感激。
【问题讨论】:
-
bind已弃用... -
谢谢,但有其他方法吗?
-
欢迎......&是的,请改用
on.. -
已经使用-$(window).on('beforeunload', function()来触发函数。
标签: javascript jquery forms