美文网首页WEB前端开发技术杂谈
html使用Application来缓存页面

html使用Application来缓存页面

作者: 传奇狗 | 来源:发表于2019-08-15 18:46 被阅读0次

html使用Application Cache的优点就是可以设置网站的某些资源缓存到本地浏览器当中,脱机之后仍然可以访问该资源。

目前除了 Internet Explorer,基本上所有主流浏览器均支持Application Cache。

Application Cache的用法
1.新建一个后缀为‘.appcache’的Manifest 文件。

# 其中“CACHE MANIFEST”是必须要有的。

CACHE MANIFEST

CACHE:

# 需要缓存的列表,第一次加载之后就缓存到了浏览器。

/navigate.js

# “NETWORK”里面的文件永远不会被缓存,且离线时是不可用的,比如a.js永远不会被缓存

NETWORK:

/a.js

# 如果使用星号来指示所有其他资源/文件都需要因特网连接

NETWORK:

*

# “FALLBACK”表示如果无法访问到资源,就会连接到URI为“/a/”,中的“/404.html”。

FALLBACK:

/a/ /404.html

2.在<html>标签中引用Manifest 文件。

3.效果:

没有配置Manifest 文件文件的效果:

配置缓存:/navigate.js后的效果

此时,断网之后也可以访问到navigate.js文件。

目录结构 配置列表

更新缓存会重新加载(如果出现下面三种情况,则会重新加载之前的资源)

1.用户清空浏览器缓存

2.manifest 文件被修改(参阅下面的提示)

3.由程序来更新应用缓存

1.自动更新:浏览器除了在第一次访问 Web 应用时缓存资源外,只会在 cache manifest 文件本身发生变化(即使是注释变化)时更新缓存。而 cache manifest 中的资源文件发生变化并不会触发更新。

2.手动更新:开发者也可以使用 window.applicationCache 的接口更新缓存。方法是检测 window.applicationCache.status 的值,如果是 UPDATEREADY,那么可以调用 window.applicationCache.update() 更新缓存。示范代码如下。

if(window.applicationCache.status == window.applicationCache.UPDATEREADY) {

        window.applicationCache.update();

在线状态检测和监视(引用)

  1.检测:navigator.onLine 属性表示当前是否在线。如果为 true, 表示在线;如果为 false, 表示离线

  2.监视:当在线 / 离线状态切换时会触发online/offline 事件,这两个事件触发在 body 元素上,并且沿着 document.body、document 和 window 的顺序冒泡。

相关文章

网友评论

    本文标题:html使用Application来缓存页面

    本文链接:https://www.haomeiwen.com/subject/ulqtsctx.html