我已经尝试了几个月来断断续续地寻找解决方案,但甚至没有接近答案 - tbh 我什至不知道在搜索时使用什么关键字,我希望这里有人有答案或至少可以指出我应该寻找的方向。
在我的公司内,我建立了一个内部网页面,人们可以向该页面添加问题(很像帮助台票务系统)。用户可以在需要时向这些问题添加更新。因此我有两个数据库表(除其他外) - 一个有问题,另一个有这些问题的更新。
我已经建立了一个网站,它使用 jquery 的 ajax 请求来轮询数据库中所有当前未解决的用户桌面问题以及该问题的最新更新(如果有的话)。根据用户的偏好,这些会以更新或发布的顺序列出。
每隔 7 秒,整个 div 就会随着整个列表的刷新而更新。因此,如果我每次刷新浏览器页面的一半时突出显示某个问题中的某些文本,我就会失去该突出显示。这种刷新在我的服务器上也有很大的负载——如果每个人的浏览器每 7 秒不断刷新整个数据库的内容,那么数据库会占用很多时间。
我想做的是让浏览器只更新自上次刷新以来不同的项目。我已将其设置为在用户上次刷新视图时更新用户数据库,因此每 7 秒(如果他们正在查看首页)此字段会获得一个新的 unix 时间戳。我还有关于问题和更新的创建时间以及关于问题的更新时间戳(当为该问题创建新更新时,更新时间戳将使用新的 unix 时间进行更新)。
据我所知,这就是 Facebook 的新闻提要所做的。时不时地将新帖子添加到顶部,在旧帖子下添加对旧帖子的回复,更新新的喜欢和分享等等。如果我在我的 facebook 页面上突出显示某些文本,突出显示不会丢失,这意味着 facebook仅更新提要的部分内容,而不是整个提要本身。这就是我想要发生的事情。
你知道任何关于如何做这样的事情的教程吗?或如何搜索,因为当我搜索 facebook 类型的新闻提要系统时,我得到的只是如何与 facebook 的 API 交互!提前致谢。