创建“保存以供离线阅读”按钮

时间:2013-10-22 17:19:10

标签: javascript html5 mobile app-offline.htm

所以我正在探索创建HTML5移动应用的不同方法。试图避免移动框架和复杂的API,如Sencha和Titanium。我的一个想法是利用“保存离线阅读”功能。是否可以创建一个用户可以单击的按钮来完成此操作?

假设这是可能的: - 使用javascript启用此功能? - 可以连接到db online吗?

整个观点是获得类似的效果,就好像你的comp上有一个想要在浏览器中打开的.html文件一样。它会离线但可以运行javascript,加载外部文件。我怎么能在移动设备上解决这个问题呢?

1 个答案:

答案 0 :(得分:0)

保存离线状态的唯一方法是使用应用缓存。在html页面上启用应用程序缓存后,您可以加载其他文件,但它是来自服务器的清单文件,用于决定缓存的内容和不缓存的内容。

我写了一个小库,可以从页面复制任何脚本和图像,并将其保存到localstoage。您仍然需要启用应用程序缓存,但它允许您动态选择要脱机保存的内容。本地存储的限制为5 MB,因此如果要保存图像则不会太多。 (https://github.com/puppybits/Offline.js

<html manifest="appcache.manifest">
  <body>
    ...
  </body>
  <script type="application/javascript" src="offline.js">
  <script>
  var offline = new Offline(); // options: {document: myDocFragment, useThreads: false}
  if (navigator.onLine)
  {
    offline.prime()
  }
  else
  {
    offline.activate()
  }
  </script>
</html>