1

我有一个图片较多的网页,需要在移动设备上离线查看。

我发现一个jquery 插件/教程确实将图像存储在本地存储中,但这不适用于我的目的。

这是可以很容易地适应使用 indexeddb 的东西吗?

此外,我的图像将定期更新。有没有办法可以在一段时间后自动清除缓存的版本,并强制用户从网络重新加载?

4

1 回答 1

1

IndexedDB 您可以将图像存储到 IndexedDB 中,但您需要负责保存、清除它们并根据需要更新它们。

此外,如果您需要它在移动设备上工作,IndexedDB 不是您想要的,因为当前的移动浏览器都不支持 IndexedDB。(来源:http ://caniuse.com/#feat=indexeddb )

离线应用程序 我建议您使用一种称为应用程序缓存的新 HTML5 功能。几乎所有浏览器都支持这一点(来源:http ://caniuse.com/#feat=offline-apps )

要使用它,您只需要创建一个 Website.manifest 文件,例如:

CACHE MANIFEST
# v0.0.3 2011-12-21
images/ImageThatIWantToCache.png
images/SecondImage.png

然后在您的网页中将 html 标签更改为:

<html manifest="Website.manifest">

优点: 1. 浏览器会自动缓存图片 2. 您可以使用原始 URL(即 /images/SecondImage.png)访问图片 3. 更新更容易,您只需将新图片拖放到 Web 服务器上并更新清单文件中的版本号。

您可以阅读有关离线规范的更多信息,或者只是在 Google 上搜索示例。

于 2012-01-27T19:04:26.780 回答