Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php onbeforeunload的替代方案_Php_Javascript - Fatal编程技术网

Php onbeforeunload的替代方案

Php onbeforeunload的替代方案,php,javascript,Php,Javascript,我想在用户离开站点时更新数据库。我正在为我的网站使用php。我正在使用javascript函数onbeforeunload并通过ajax调用php来更新数据库 现在的问题是Opera和Safari不支持onbeforeunload函数,因此应该从数据库中删除的条目仍然在其上,并影响我的数据库和站点 有什么想法或建议我可以做什么吗?onbeforeuload似乎是微软的专有功能。Firefox实现了它,而Safari和Opera没有实现。 尝试窗口。改用onunload事件。 例如: func

我想在用户离开站点时更新数据库。我正在为我的网站使用php。我正在使用javascript函数onbeforeunload并通过ajax调用php来更新数据库

现在的问题是Opera和Safari不支持onbeforeunload函数,因此应该从数据库中删除的条目仍然在其上,并影响我的数据库和站点


有什么想法或建议我可以做什么吗?

onbeforeuload
似乎是微软的专有功能。Firefox实现了它,而Safari和Opera没有实现。

尝试
窗口。改用onunload
事件。

例如:

function unloadPage() {
   alert("unload event detected!");
}
window.onunload = unloadPage;

Safari支持OnBeforeUnload——不支持的是使用AJAX。。。您需要使用同步调用-您可以使用
alert
来验证这一点。

onbeforeunload
应该可以在Safari中工作。请参阅(我刚刚在Google Chrome中测试过,它可以正常工作)

(实验技术)似乎适合此类任务。

您无法在“为什么要使用该事件”提供的列表中看到
onbeforeunload
?什么要求不适合使用列表中的
onunload
事件?Saeed,如果我使用onunload,我就不能通过ajax调用php来更新我的数据库。“你在W3提供的列表中看不到onbeforeunload为什么要使用该事件?”W3是你爸爸还是什么?只有onbeforeunload才能执行大量合法的用户交互。Gmail和facebook都使用它。。无论它是否在W3S的rolodex中都没有什么意义。
onbeforeunload
现在在基于Webkit的Opera 15中得到了支持。是的,我知道,在safari上,你只能弹出一个警报,但不能运行ajax谢谢,我知道警报会弹出,但这不会运行我的ajax。@xtremehunger-你想知道什么?