首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Node JS Chat -告知导航到页面还是关闭窗口

问Node JS Chat -告知导航到页面还是关闭窗口
EN

Stack Overflow用户
提问于 2011-08-15 01:53:48
回答 1查看 435关注 0票数 1

我正在向我的网站添加Node JS聊天。目前,如果用户使用以下JQuery方法关闭窗口,我将从聊天中清除该用户:

代码语言:javascript
复制
$(window).unload(function () {
  jQuery.get("/leave", {id: session.id});
});

这将完美地工作,并告诉节点JS服务器用户已经关闭了窗口,但是,如果用户导航到网站上的另一个页面,这也会将用户从聊天室中删除。有没有办法可以告诉我,如果他们转到域上的另一个页面,而不是从聊天中删除他们?当他们导航到另一个页面时,它被视为关闭了窗口。

干杯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-15 02:02:13

检查用户何时将聊天留在服务器上,而不是客户端上。

我能看到的唯一问题是,除非你用JavaScript加载你的页面,否则你的用户每次浏览网站时都会离开并重新进入聊天。

您可以通过在disconnect部分设置超时来解决此问题。这不是一个完美的解决方案,但它可以在大多数情况下工作。

如果你使用的是socket.io,下面是一些服务器代码:

代码语言:javascript
复制
socket.on('connection', function (client) {

  client.on('disconnect', function () {
    client.broadcast({ action: "quit", clientId: client.sessionId });
  });

});

在您的客户端,您可以检查action === "quit"并采取适当的操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7058607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档