猿问

在Chrome中window.onbeforeunload ajax请求

我有一个网页,可通过Ajax处理机器的远程控制。当用户离开页面时,我想自动与机器断开连接。所以这是代码:


window.onbeforeunload = function () {

  bas_disconnect_only();

}

断开连接功能只是将HTTP GET请求发送到PHP服务器端脚本,该脚本完成了断开连接的实际工作:


function bas_disconnect_only () {

   var xhr = bas_send_request("req=10", function () {

   });

}

在FireFox中可以正常工作。但是使用Chrome,根本不会发送ajax请求。有一个无法接受的解决方法:向回调函数添加警报:


function bas_disconnect_only () {

   var xhr = bas_send_request("req=10", function () {

     alert("You're been automatically disconnected.");

   });

}

添加警报呼叫后,请求将成功发送。但是正如您所看到的,这根本不是一个解决方法。


有人可以告诉我Chrome是否可以实现吗?我正在做的事情对我来说完全合法。


谢谢,


噜噜哒
浏览 1749回答 3
3回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答