Search

与我们合作

我们专注:网站策划设计、网络多媒体传播、网站优化及网站营销、品牌策略与设计
主营业务:网站建设、移动端微信小程序开发、VI设计、网络运营、云产品·运维解决方案

有一个品牌项目想和我们谈谈吗?

您可以填写右边的表格,让我们了解您的项目需求,这是一个良好的开始,我们将会尽快与您取得联系。当然也欢迎您给我们写信或是打电话,让我们听到您的声音

您也可通过下列途径与我们取得联系:

地 址: 深圳.龙岗区大运软件小镇11栋3楼

电 话: 138 2888 4598 / 138 0880 9053

网 址: http://www.appvx.cn

快速提交您的需求 ↓

【网站建设】applicationCache对象的事件

时间:2016-09-08 浏览:3784 编辑:深色多郎 来源:程序网站设计

applicationCache对象处理具有update方法与swapCache方法之外,在大品牌网站建设中,还具有一系列的事件。下面用过前面讲过的浏览器与服务器的交互过程来看一下在这个过程中的这些事件是如何被触发的。

首次访问http://localhost:82/mr/网站。

(1)浏览器:请求访问http://localhost:82/mr/。

(2)服务器:返回index.html网页。

(3)浏览器:发现该网页具有manifest属性,触发checking事件,检查manifest文件是否存在。不存在时,触发error事件,表示manifest文件未找到,同时也不执行步骤(6)开始的交互过程。

(4)浏览器:解析index.html网页,请求网页上所有资源文件。

(5)服务器:返回所有资源文件。

(6)浏览器:处理manifest文件,请求manifest中所有要求本地缓存的文件,包括index.html页面,即使刚才已经请求过该文件。如果要求本地缓存所有文件,这将是一个比较大的重复的请求过程。

(7)服务器:返回所有要求本地缓存文件。

(8)浏览器:触发downloading事件,然后开始下载这些资源。在下载的同时,周期性地触发progress事件,开发人员可以用编程的手段获取多少文件已被下载,多少文件仍然处于下载队列中等信息。

(9)下载结束后触发cached事件,表示首次缓存成功,存入所有要求本地缓存的资源文件。

再次访问http://localhost:82/mr/网站,步骤(1)~(5)同上,在步骤(5)执行完之后,浏览器将核对manifest文件是否被更新,若没有被更新,触发noupdate事件,步骤(6)开始的交互过程不会被执行。如果被更新了,将继续执行后面的步骤,在步骤(9)中不触发cached事件,而是触发updateReady事件,这表示下载结束,可以通过刷新页面来使用更新后的本地缓存,或调用swapCache方法来立刻使用更新后的本地缓存。

另外,在访问缓存名单是如果返回一个HTTP404错误(页面未找到)或者410错误(永久消失),则触发obsolete事件。

在整个过程中,如果任何与本地缓存有关的处理中发生错误的话,都会触发error事件。可能会触发error事件的情况分为以下几种。

缓存名单返回一个HTTP404错误(页面未找到)或者410错误(永久消失)。

缓存名单被找到且没有更改,但引用缓存名单的HTML页面不能正确下载。

缓存名单被找到被更改,但浏览器不能下载某个缓存名单中列出的资源。

开始更新本地缓存时,缓存名单再次被更改。

本站文章均为深正网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,但谢绝直接搬砖和抄袭!感谢...
GO 欣赏案例
查看经典案例
在线咨询
电话咨询
0755-36630177
返回顶部
在线咨询 获取报价 电话咨询
获取报价
您的称呼:

*

您的电话:

*

您的邮箱:

*

提交 重置
重要的事情,电话里聊

接通客服

不方便的时候线上咨询,在线等哦