首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验证用户在某段时间内未在框中键入内容

验证用户在某段时间内未在框中键入内容
EN

Stack Overflow用户
提问于 2009-12-27 18:28:56
回答 2查看 74关注 0票数 0

我正在用PHP和AJAX制作一个聊天应用程序,如果用户已经在页面上至少1-2分钟,并且在过去的1-2分钟内没有在聊天框中键入任何内容,我想显示一条消息。

我想在聊天框中显示一条消息,就像雅虎一样:[last message received 2-3 minutes ago]

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-12-27 18:33:13

使用setInterval定期运行检查输入的值的函数,并将其与您上次检查的时间(需要存储)进行比较。

如果它没有更改,您可以使用XHR来告诉服务器。

票数 3
EN

Stack Overflow用户

发布于 2009-12-27 18:34:23

您可能会使用setTimeout

设置收到新消息时的超时时间。您创建了一个回调函数,该函数将在时间到期后被调用--该函数将写入消息。当收到消息时,超时将被清除,如该链接中所述。

在此基础上,您可能希望在用户更改文本框时在脚本中设置某种类型的变量,并让回调函数检查该变量(该变量将在收到新消息时清除) --这样,如果用户收到一条消息,并且改变了主意并将其删除,则不会显示该消息。但我不确定这是不是你想要的行为。

如果希望消息每隔一段时间更改一次,请使用setInterval,它将首先绘制消息,然后更新自收到消息以来经过的时间量。您甚至可以将它们组合在一起--将超时设置为3分钟,然后从setTimeout的回调开始,每隔1分钟开始一次间隔。您可能希望在收到新消息时清除间隔并删除消息,这样您就不会在会话中留下这些陈旧的无意义的“5分钟前收到的消息”消息。

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

https://stackoverflow.com/questions/1965693

复制
相关文章

相似问题

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