在过去,当我报道事件时,我使用元刷新和5分钟的计时器来刷新页面,这样人们就可以获得最新的更新。
意识到这可能不是最好的方法(在IE中并不总是有效,中断一个人的流程,使用屏幕阅读器重新启动程序,等等)我想知道有没有其他方法来处理这种情况。
有没有可能让ajax这样的东西每隔几分钟检查一次服务器上的html文件是否较新,并让它打印一条消息,上面写着"Update info available,click here to refresh"?
如果这很疯狂,那么一个从5分钟开始倒计时并建议刷新的javascript怎么样?
如果有人能给我指点教程或代码片段,我将不胜感激。我只是在电视上扮演一个节目制作人。:-)
发布于 2010-11-22 07:13:24
setInterval(function() {
if (confirm("Its Been 5 Minutes. Would you like to refresh")) {
window.location.reload(true);
//Or instead of refreshing the page you could make an ajax call and determing if a newer page exists. IF one does then reload.
}
}, 300000);发布于 2010-11-22 07:16:05
实际上,您对定时Ajax测试的想法是一个很好的想法。我不确定这正是StackOverflow使用的,但它会定期检查是否发布了其他答案,并每隔一段时间向用户显示是否有更新。
我认为这是非常理想的,原因如下:
我的观点是-让ajax脚本将最新的post id发送到一个检查新脚本的脚本。这个脚本可以查询你的数据库,看看是否有新的帖子,以及有多少。它可以返回这个数字。如果有新的帖子,显示一些(非模态)消息,包括更新的数量,并让用户决定如何处理它。
发布于 2010-11-22 07:16:29
你可以在javascript中使用setInterval函数。
这是一个样例
setInterval("refresh function", milliseconds, lang);您将使用它将一个名称传递给一个函数,该函数实际刷新第一个参数的页面,以及第二个参数的刷新间隔毫秒数(300000表示5分钟)。第三个参数lang是可选的
https://stackoverflow.com/questions/4240964
复制相似问题