首页 > 代码库 > 记录HTML5离线存储的一些比较容易忽略的知识点
记录HTML5离线存储的一些比较容易忽略的知识点
1 当HTML文件中关联了manifest文件,那么当前文件会默认被缓存。但是缓存的也仅仅是这个HTML文件,如果该文件中关联了其他文件,如JS,CSS,图片,那么
就需要手动将这些文件加入manifest清单列表中,否则离线后这些文件不会被加入缓存之中,导致载入失败。
2 当断网之后,更新manifest和关联文件,刷新页面,会报错:Manifest fetch failed ,因为manifest列表被更新,那么浏览器会发送请求进行更新manifest列表中的文件,
但是因为断网,更新失败,所以报错。
3 联网状态,当更新manifest和关联文件后,刷新页面后,会进行更新操作,但是当前刷新,其请求仍然是上一次缓存的内容,刷新之后,上次的缓存才会被更新,故而需要
到下次刷新页面新的缓存才会生效才会生效。当然这一切的前提是在 不手动用JS更新的情况下。
4 applicationCache事件,其中update()是更新缓存文件,即根据manifest列表从服务器上更新文件,当前前提是manifest清单有所改动,并且服务器文件有所变动。而
swapCache()则是替换缓存文件,将更新下来的缓存文件替换原来的缓存文件。
其实这里有小BUG,或者是我没搞懂,我只要调用了update(),即便不调用swapCache()貌似也能替换原来的缓存,不知道是不是刷新页面的时候,浏览器自动执行了这
一步。。。这里求教。
记录HTML5离线存储的一些比较容易忽略的知识点
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。