在我的onbeforeunload
函数中,我们自动将ActiveX控件与服务器断开连接
这个过程大约需要3到4秒(我们无法控制)所以我想显示一条消息,让用户知道一旦控件断开连接就会发生刷新/导航/关闭窗口。我不想弹出alert()
,只想向用户显示“异步”消息。
但是,我似乎无法在onbeforeunload
内对页面的UI进行任何更改。我不能使用我拥有的Toast消息类,甚至不能更改“status”div
,因为它们似乎没有做任何事情。
这是onbeforeunload
功能的限制吗?我唯一的选择是使用alert()
吗?
修改
代码示例:
function handleWindowOnBeforeUnload() {
//alert('Disconnecting from client...'); //Would rather not use an alert()
ShowToast('Closing connection...'); //Doesn't show
$('#statusDiv').html('Auto-disconnect...'); //Neither does this
//This is what takes ~4 seconds
acx.stopConnection();
}
答案 0 :(得分:1)
这是onbeforeunload
功能的限制。
说实话,这种方法存在缺陷,您应该考虑将应用更改为不需要onbeforeunload
功能。
如果您需要断开服务器上的连接,可以检测用户通过长轮询或Web套接字断开连接。我很确定ActiveX也是如此。