应用程序缓存-HTML 5

时间:2018-10-12 19:41:49

标签: html html5 html5-appcache

在有关HTML5的应用程序缓存的在线文档之一中,它表明一旦脱机用户重新连接,缓存的文件就会更新。我检查了W3的原始HTML5 appcache定义,但找不到支持此语句的任何内容。

有人知道这是真的吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

MDN说the following,尽管如果您向上滚动该页面则表明它已被弃用。

  • 如果存在应用程序缓存,浏览器将直接从缓存中加载文档及其相关资源,而无需访问网络。这样可以加快文档加载时间。
  • 然后,浏览器检查缓存清单是否已在服务器上更新。
  • 如果缓存清单已更新,则浏览器将下载清单的新版本以及清单中列出的资源。这是在后台完成的,不会对性能产生重大影响。 li>

逻辑告诉我,这还取决于您正在使用的应用程序,您尝试连接的服务器以及它可能具有的任何特殊设置,浏览器保留历史记录的时间,保留的内容以及是否您保存了页面以供离线查看-是否将所有代码/图像都保存在正确的位置。

示例:

想象一下,您保存了一个页面以供离线查看,并且该页面上有一个JS事件处理程序,该事件处理程序运行while循环,每隔n秒钟执行一次ajax请求以执行某项操作,例如只要您在页面上更改数字在线...只要循环正在运行,您就会突然连接到Internet,并使用正确的参数将请求发送到正确的url,即使浏览器中的url可能显示类似以下内容,请求也应该通过file:///C:/Users/you/Desktop/...

即使我的网址类似于上面的网址,我也已经做到了。有一次,我在网站上使用braintree的嵌入式JavaScript,并在后端使用它的API。离线时尝试加载页面= Nothing。联机=更新了页面上的位置,当我有必需的参数时,该位置正好指向正确的URL。如果我再次离线,则可以刷新页面,看到<div>中加载的图像相同,但是无法发送任何数据。