天天看点

移动web app开发-----application cache 离线缓存(进阶)

     通过上面的两篇文章,application cache的应用和原理,我们应该能够全面了解application cache了。同时我们

也能够清楚application cache在设计上有哪些不尽仁义的地方。这篇文章我们主要来了解下application cache在各个浏览器的

支持情况和存储大小,以及有哪些坑爹的地方,以及如何解决这些坑爹的地方。

app cache在存储大小的限制

safari桌面版没有限制【包括mac和windows】

safari移动版有10m的限制

chrome桌面版有5m的限制

android浏览器没有限制

firefox桌面版没有限制

opera可以手动管理,默认限制大小为50m

浏览器支持情况

safari从版本4开始支持

chrome从版本5开始

safari移动版从ios2.1开始支持

firefox从版本3.5开始支持

opera从版本11开始支持

android从版本2.1开始支持

ie目前全面不支持,包括ie10

我们知道application cache会把浏览器第一次输出的动态资源也进行缓存起来,那么我们如何解决这个问题呢

首次请求页面时,我们只加载静态资源,和外围的模版,然后通过一个ajax请求拿到我们的动态数据,参考代码

通过在页面中放一个隐藏的iframe,然后在iframe所引用的页面中使用app cache缓存,参考代码

使用localstroage进行存储,然后利用cookie进行更新,具体参考google和bing的做法

继续阅读