首页 理论教育 JavaScript中的swapCache方法介绍

JavaScript中的swapCache方法介绍

时间:2023-06-03 理论教育 版权反馈
【摘要】:当这个事件被触发后,可以用swapCache()方法来手工进行本地缓存的更新。");applicationCache.swapCache();alert("本地缓存更新完毕,可以刷新页面使用最新版应用程序。另外,尽管使用swapCache()方法立刻更新了本地缓存,但是这并不意味着页面上的图像和脚本文件也会被立刻更新,它们都是在重新打开本页面时才会生效。图10.2浏览器缓存情况图10.3swapCache方法实例

JavaScript中的swapCache方法介绍

该方法用来手工执行本地缓存的更新,它只能在applicationCache对象的updateReady事件被触发时调用,updateReady事件只有在服务器上的manifest文件被更新,并且把manifest文件中所要求的资源文件下载到本地后触发。该事件的含义是“本地缓存准备被更新”。当这个事件被触发后,可以用swapCache()方法来手工进行本地缓存的更新。

当本地缓存的容量非常大,本地缓存的更新工作将需要相对较长的时间,而且还会把浏览器锁住。这时最好有个提示,告诉用户正在进行本地缓存的更新,代码如下:

applicationCache.addEventListener("updateready",function(event){

//本地缓存已被更新,通知用户。

alert("正在更新本地缓存……");

applicationCache.swapCache();

alert("本地缓存更新完毕,可以刷新页面使用最新版应用程序。");

},false);

在以上代码中,如果不使用swapCache()方法,本地缓存一样会被更新,但是更新的时间不一样。如果不调用该方法,本地缓存将在下一次打开本页面时被更新;如果调用该方法,则本地缓存将会被立刻更新。因此,可以使用confirm()方法让用户选择更新的时机,是立刻更新还是下次打开页面时更新,特别是当用户可能正在页面上执行一个较大的操作的时候。

另外,尽管使用swapCache()方法立刻更新了本地缓存,但是这并不意味着页面上的图像和脚本文件也会被立刻更新,它们都是在重新打开本页面时才会生效。较完整的实例如下:(www.xing528.com)

HTML页面代码:

该页面使用的manifest文件内容如下:

CACHEMANIFEST

#version1.20

CACHE:

script.js

其运行结果如图10.2和图10.3所示。

图10.2 浏览器缓存情况

图10.3 swapCache方法实例

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈