0

我正在使用 AJAX(一点点)编写一个网络聊天程序。当两个用户都打开聊天页面时它正在工作,但是当一个用户向其他用户发送数据时我想打开一个窗口。

4

4 回答 4

1

除非两个用户都打开了一个共同的网页(由您控制​​),否则这是不可能的。但是,为了提供解决方案,让我们同意一些假设:

  1. 两位访问者都在您的主页上
  2. 其中一位访问者打开一个聊天窗口并输入一条消息。

输入该消息后,您可以使用 AJAX 将消息发送到服务器。在这一点上,最好继续将消息保存到数据库中(这部分只值我两美分)。必须将主页设置为每隔一段时间轮询任何消息,也使用 AJAX(我建议每 30 秒左右,具体取决于此应用程序的目的)。如果收到新消息,则会通过打开聊天窗口 ( window.open(url)) 进行响应,然后就可以开始讨论了。

于 2012-11-09T16:20:37.553 回答
1

两个用户都应该打开您的网页。这是基本要求。之后,当两个用户都在页面上处于活动状态时,您可以使用 AJAX 提供一个 servlet,该 servlet 接受用户名并弹出数据,告诉页面是否有该特定用户未读的新消息。如果有新消息,它应该通过 Javascript 自动打开一个窗口并将其带到主聊天页面。这是在许多实时聊天应用程序中完成的,在这些应用程序中,用户在站点上移动时会突然弹出一个窗口并打开一个聊天窗口。

于 2012-12-10T15:53:02.360 回答
0

听起来您需要编写一些 javascript 来在收到消息时打开一个新窗口。您如何发送消息 -反向 Ajax

大概两个用户都需要打开您的聊天应用程序网页,以便您有地方放置反向 ajax 挂钩代码。

于 2008-10-21T08:07:14.330 回答
0

不能用一些JS代码打开一个新窗口吗?

winRef = window.open( URL, name [ , features [, replace ] ] )
于 2008-10-21T08:07:15.873 回答