web项目如何监听用户关闭浏览器tab、窗口事件

在web前端项目中,需要实现一个需求
1、记录用户登录登出行为
2、用户关闭窗口则记录登出

遇到一个问题没卡过去。就是怎么样监听到用户关闭了窗口?如何判断用户开了多个tab,关闭一个不属于登出行为?刷新页面时也不属于登出行为。

没有很好的思路。求解


芜湖不芜
浏览 816回答 1
1回答

斯蒂芬大帝

换个思路,不用去监听浏览器本身.而是做个长链或者websocket就行了,这个和统计在线人数的道理一样.至于所谓的判断用户开了多个tab,关闭一个不属于登出行为,你可以给每个用户做个特征比如user_id.例如:$userList[$uid]=0;on('login')时,++$userList[$uid];//=1便是则首次登录on('disconnect')时,--$userList[$uid];//=1便是最后一次断开这样就完美了.补充个突然想到的比喻:判断鱼儿上钩,不是去盯着鱼有没有张嘴,而是盯着线有没有动.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript