JavaScript
英文原文:
JavaScript and Application Cache
现在可以用JavaScript API与应用缓存进行交互了。通过 window.applicationCache 访问API。
API支持以下处理程序:
- window.applicationCache.onchecking - 在浏览器第一次下载清单文件或检测下载的清单文件被更改时调用此处理程序。它总是第一个被调用的处理程序。
- window.applicationCache.onnoupdate - 在checking处理程序之后,且清单文件没有改变时,调用此处理程序。 此处理程序之后不再触发其它处理程序。
- window.applicationCache.ondownloading - 在checking处理程序之后,且当清单文件的资源列表第一次下载,或已下载过但被更改时,调用此处理程序。
- window.applicationCache.onprogress - 在清单文件列表的每个文件被下载之后调用此处理程序。此事件传递 ProgressEvent 参数,包含总数和已下载数,不过它并不是在所有浏览器都可靠。
- window.applicationCache.oncached - 在清单文件的所有资源被下载之后,调用此处理程序。 此处理程序之后不再触发其它处理程序。
- window.applicationCache.onupdateready - 在下载处理程序调用之后,且已存的应用缓存被更改时,调用此处理程序。 此处理程序之后不再触发其它处理程序。
- window.applicationCache.onobselete - 在请求清单文件返回404 Not Found 或 410 Gonestatus 代码时,调用此处理程序。它表明清单文件不存在,应用缓存将被删除。此处理程序之后不再调用其它处理程序。
- window.applicationCache.onerror - 错误发生时,调用此处理程序。这个事件包含一个缘由数子:查找清单文件时发生的错误,查找清单文件的资源列表时发生的错误,当应用缓存被更改时程序清单被更改。 此处理程序之后不再触发其它处理程序。
其它翻译版本 (1)
加载中
API支持以下变量:
- window.applicationCache.status - 当前状态标识,Int型,用于解码为状态常量(如下列表).
- window.applicationCache.UNCACHED - 不能使用应用缓存.
- window.applicationCache.IDLE - 应用缓存闲置
- window.applicationCache.CHECKING - 第一次下载清单文件或检查下载文件是否被更改.
- window.applicationCache.DOWNLOADING - 清单文件的资源列表被首次下载或清单文件已被更新.
- window.applicationCache.UPDATEREADY - 已存应用缓存被更新,所有清单文件的资源已被下载.
- window.applicationCache.OBSOLETE - 请求清单文件返回 404 Not Found 或 410 Gone status 代码.
API支持以下方法:
- window.applicationCache.update - 触发检查清单文件是否被更新的请求,并在被请求时更新应用缓存.
- window.applicationCache.swapCache - 替换旧缓存,通常用于用新缓存显示当前页,更新清单文件.
其它翻译版本 (1)
加载中
应用缓存最有用的用途之一是,当应用缓存被更改时提示用户刷新页面。有一个已知问题是重复刷新,详细描述在我的下一篇博客 Problems with Application Cache? ,用如下代码:
另一种不太友好的方式是,当应用缓存被更新时强制刷新页面,然而这可能会导致页面被加载两次。当应用缓存被更新时,页面作为文件从应用缓存立即加载。在速度很快的网络环境下它是可以的,但在移动网络下,可能就没有那种好的体验了。针对这种情况的代码:
API的另一个用法是,如果用户已添加上面提示用户刷新页面的的代码,就可以每小时检查应用清单是否已更新,以下代码确保用户总是拥有网站的最新拷贝.
其它翻译版本 (1)
加载中
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。
2KB翻译工作遵照
CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务