日期:2014-05-17  浏览次数:21018 次

如何使用下面的HTML5功能创建离线的网页和应用程序

用户希望他们的网站和应用程序的工作,即使在网络不可用。随着越来越多地存储在云中的数据,开发者想使流体的经验,使对数据的访问时,有没有连接设备时,断开网络连接或当他们遇到死角覆盖。

在这篇文章中,我们将展示如何创建乖巧离线的网页和应用程序使用下面的HTML5功能:

  • AppCache本地存储文件资源,离线访问它们作为URL
  • 索引型数据库存储结构化数据在本地,你可以访问和查询它
  • DOM存储在本地存储少量的文字信息,
  • 离线事件来检测,如果你€?重新连接到网络

例:随时随地访问数据的离线支持

让我们€?的说,你去购物,从您最喜爱的食品网站的配方的打印输出,但是当你€?重新在市场上,你塔卡纳€?吨找到一些关键的成分。

试想一下,当你在家中使用移动PC浏览食谱网站,部分网站会自动下载离线使用。这可以让你把你的手机PC到店,访问该网站,并在市场寻找一个新的配方。最好的部分是,你可以做到这一点, 被连接到网络。作为一个消费者,您的网站感激,因为它只是工作时,你需要它。

离线的'蛋糕'这个词使用的食谱网站的搜索结果。

作为一个开发者,你可以使这些类型的场景相结合的离线技术:AppCache,索引型数据库,DOM存储,WebSockets的(或XHR)。在探索个人的技术,让我们的探讨的好处。

Metro风格的应用程序和网站,离线技术让你来处理连接故障。想象一下,您的用户填写一个表格,他失去网络连接。您的网站或Metro风格的应用程序应该怎么做呢?连接自由发展的心态可以让您的应用程序是否连接到网络或不正确地独立工作。你的应用程序将正常工作。

在更复杂的情况下,Web站点和应用程序允许用户创建新的内容,并存储新的数据,即使应用程序是完全脱机。试想一下,无缝地工作在脱机状态下,如Outlook今天的Outlook Web Access(OWA)的Hotmail或GMail。

离线技术也可以通过本地缓存的资源服务,预缓存将来信息和转移从云(或网络)到客户端设备的处理能力,提高整体性能。信息越多,你€?重新能够缓存在本地,在本地搜索,并计算在本地服务器和用户的体验将更快,需要更少的资源热转印机。

有一个Metro风格的应用程序离线工作的期望高于网站的脱机工作。因为他们使用从商店的自我包含的程序包部署,用户希望他们有某种类型的离线功能(如游戏,书籍,食谱等)。即使这些应用程序是无法创建或访问新的内容,以前的内容应该是可见的(例如联系人,会议,饲料,杂志等)。

本地缓存文件资源使用AppCache

AppCache使您能够创建长寿命的本地缓存下载的文件资源,资源可以访问而离线或使用的同时在线,以提高性能。试想一下,一个三岁的孩子使用一台笔记本电脑,下载一个交互式的Web的游戏(KidsBook)从您的家庭网络。如果应用程序的资源存储在本地,孩子可以继续在车上玩游戏,那里没有网络连接。

如果KidsBook使用AppCache,本场比赛将有缓存必要的资源(的JavaScript,HTML,CSS,音频,视频等)时,先下载后从网络上断开时,播放的游戏。这可以让孩子保持愉悦,即使设备本身没有网络连接。

AppCache创作流程。

要看到如何启用互动网页游戏脱机工作,检查出KidsBook的IE Test Drive网站上的例子。

AppCache使用一个manifest文件,以缓存的内容从网站上指定资源的URI。幕后发生后,浏览器显示网页,它允许在清单文件中定义的资源被下载的缓存。这保证了资源下载到本地机器上,作为一个单位在一个事务中,创建一个本地的缓存。如果一个单一的资源下载失败,没有创建高速缓存。要更新存储在缓存中的内容,在您的服务器更新清单文件。当用户下次访问该网站时,浏览器比较明显的服务器上的文件的缓存副本。如果缓存的舱单副本是不同的服务器副本,新版本更新清单文件中定义的内容高速缓存的使用。

A