gpt4 book ai didi

javascript - 当有人离开页面时,如何从我的列表中删除用户?

转载 作者:行者123 更新时间:2023-12-03 02:14:39 26 4
gpt4 key购买 nike

在我的网站上,我有一个事件用户选项卡,但当您离开该页面时,它不会将您从列表中删除。我已尝试 window.onbeforeunload();$(window).on('beforeunload', removeActiveUser()); 从列表中删除客户端。我尝试让代码调用警报,警报在页面加载后立即显示,而不是在您关闭页面时显示。有没有一种方法可以在没有服务器端代码的情况下做到这一点?如果我确实需要服务器端,那会是什么?

function removeActiveUser() {
var i = 0;
delay(1000);
var keys = currentActiveUsers;
var table = currentActiveUsers2;
for (i; i < keys.length; i++) {
var l = keys.length;
var k = keys[i];
console.log(k);
var name = table[k].Name;
var link = new Firebase("https://firebaseio.com/ActiveUsers/" + table[k]);
//var link2 = new Firebase("https://firebaseio.com/error/);
if (name == Name && table[k].Id == cId) {
link.remove();
}
}
}
$(window).on('beforeunload', removeActiveUser());

最佳答案

所以你的主要问题是当用户离开页面时触发操作(如果我误解了你,请纠正我)

如果是这种情况,那么我使用的解决方案之一是每 n 秒发送一个 http 请求。

由于您使用的是 Firebase,因此您可以让客户端 JS 更新针对该用户的条目(我们称其为live_timestamp),并且每 n 秒更新一次,因此您的表格将如下所示:

[ 
{
user: 'nick',
alive: '1521677841583'
},
{
user: 'alex',
alive: '1521677621325'
}
]

在您的 JS 上,您将有一个读取此特​​定字段并具有规则的函数:if Date.now() - user.alive < y then removeActiveUser(user)

关于javascript - 当有人离开页面时,如何从我的列表中删除用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49418485/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com