假设我的网站页面上有用户。
我在服务器上更新了此页面,但用户在重新加载页面之前不会注意到差异。
JavaScript 函数如何检测差异并开始重新加载页面?
解决方案可能是使用计时器每秒重新加载页面,但这会导致大量流量?
最佳答案
您要求的功能是拥有一个可以将信息推送到浏览器的服务器,例如 Comet .
此外,您还可以创建一个 Ajax 请求,该请求将测试浏览器中显示的页面的当前版本,并验证它是否未在服务器端更新。 一旦检测到服务器有页面的新版本,您的脚本就可以将其告诉用户(未经用户同意重新加载是不好的做法)。
为了避免过度调用服务器,您应该确保您的 Ajax 请求仅定期启动(2 分钟?5 分钟?更多?),并且当前没有其他请求正在运行。
关于javascript - 如何检测网页是否发生变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29080680/