Safari中没有发生$ .post调用

我面临着一个奇怪的问题。 关闭完整的safari浏览器时,我需要使用jquery post调用一个函数。 但是这不是在关闭safari浏览器时调用的。 但是美女在所有其他浏览器中都有效。

以下是我的代码,

 window.onbeforeunload = confirmExit; function confirmExit() { $.post("test.php"); }  

请在safari中进行这项工作。

谢谢,Dinesh Kumar Manoharan

这可能是因为您正在进行异步发布,并且Safari在发出请求之前停止运行JavaScript(由于页面被卸载)。 尝试使用$.ajax而不是$.post并将async设置为false来阻止呼叫。 像(未经测试)的东西:

 function confirmExit() { $.ajax({ 'async': false, 'type': 'POST', 'url': 'test.php' }); } 

根据Mozilla MDC ,window.onbeforeunload不会在Safari中返回任何内容,因此请根据上面链接的示例修改代码。

这里还有另一个关于此问题的线索。 希望能帮助到你。