我开发了一个简单的聊天应用程序,我正在使用$window.onbeforeunload
当有人关闭选项卡/浏览器时(基本上是当用户离开房间时)通知其他用户。
这是我的代码
$scope.onExit = function() {
$scope.chatstatus.$add({
status: $scope.getUsername + ' left'
});
};
$window.onbeforeunload = $scope.onExit;
这在桌面浏览器上工作得非常好,但在 Android Chrome 浏览器上却不行。这onbeforeunload
函数根本没有被触发。
请提出解决方案/解决方法。谢谢。
EDIT:正如评论中提到的,这是一个已知问题,如果不是解决方案,请提出解决方法。
看起来您需要检查 onbeforeunload 和 onunload。
这个答案看起来是一个很好的方法。
Android Chrome window.onunload https://stackoverflow.com/questions/17535076/android-chrome-window-onunload
window.onunload = window.onbeforeunload = function() {
var guid = sessionStorage.getItem("WindowGUID");
var tmp = JSON.parse(localStorage.getItem("WindowGUIDs"));
tmp = tmp.remove(guid); // remove is a custom prototype fn
localStorage.setItem("WindowGUIDs", JSON.stringify(tmp));
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)