- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.applicationCache对象的事件 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页面不能正确下载。 缓存名单被找到且被更改,但浏览器不能下载某个缓存名单中列出的资源。 开始更新本地缓存时,缓存名单再次被更改。 【例8-2】 为了说明这个事件流程,在下面的代码中,将浏览器与服务器在交互过程中所触发的一系列事件用文字的形式显示在页面上,这个页面中可以看出这些事件发生的先后顺序。其主要代码如下: !DOCTYPE HTML html manifest=applicationCacheEvent.manifest head meta charset=UTF-8 titleapplicationCache事件流程示例/title script function drow() { var msg=document.getElementById(mr); applicationCache.addEventListener(checking, function() { mr.innerHTML+=checkingbr/; }, true); applicationCache.addEventListener(noupdate, function() { mr.innerHTML+=noupdatebr/; }, true); applicationCache.addEventListener(downloading, function() { mr.innerHTML+=downloadingbr/; }, true); applicationCache.addEventListener(progress, function() { mr.innerHTML+=progressbr/; }, true); applicationCache.addEventListener(updateready, function() { mr.innerHTML+=updatereadybr/; }, true); applicationCache.addEventListe
您可能关注的文档
最近下载
- 基于“双高”背景下高职院校一流师资队伍建设的思考-来源:现代职业教育(高职高专)(第2020030期)-山西教育教辅传媒集团有限责任公司.pdf VIP
- DG_TJ08-2062-2017:住宅工程套内质量验收规范.pdf VIP
- 第二届全国数字化机房安装技能竞赛(电气设备安装工赛项)考试题库资料-下(多选、判断题汇总).pdf
- 北京-威旺M20-产品使用说明书-威旺M20 A12-BJ6443V4SMB-M20使用说明书V22015-01-29.pdf
- 春花秋月何时了G调正谱.pdf
- 急性心肌梗死及PCI术d 护理查房ppt课件.ppt
- 颅内压增高与治疗培训ppt课件.pptx VIP
- 公司关于“精益管理年”宣传工作的方案.pdf VIP
- 钻孔灌注桩试桩技术要求.docx
- 剑桥(join in)版三年级上册英语全册教学课件(配2024年秋改版教材).pptx
文档评论(0)