我正在制作一个移动HTML5网络应用程序,我想知道我是否可以使用本地存储使用户在丢失互联网访问权限时仍能使用该应用程序。
基本的想法是,当他们有wi-fi / 3G他们下载HTML和数据时,但当他们失去互联网访问权限时,他们至少可以使用旧的缓存数据访问最后一个版本(警告数据可能不会是最新的,直到他们再次访问互联网。)
这可以通过本地存储吗?
答案 0 :(得分:2)
当然可以。 localStorage
的目的之一是启用脱机应用程序。
你可以检查(see here for details):
window.navigator.onLine
查看您是在线还是离线,或者只是:
window.addEventListener("offline", offlineFunc, false)
window.addEventListener("online", onlineFunc, false)
如果离线,则通过部分更新页面来提供localStorage
中存储的内容。
另一种方法是使用cache manifest
。
在这里,您可以定义哪些文件在浏览器脱机时可用,哪些文件需要网络等等。
详情请见此处:
https://en.wikipedia.org/wiki/Cache_manifest_in_HTML5
http://diveintohtml5.info/offline.html
除localStorage
之外,您还可以使用IndexedDB
,这也允许您存储Blobs
(或文件)(File API即将到来,目前仅适用于Chrome)。< / p>