html5 web应用程序缓存

5 篇文章 0 订阅
话说到web应用程序缓存,这个东西,我觉得挺有用的。以前,个人看到网页版的美图秀秀,而自己的电脑本地也安装了美图秀秀,就觉得这两者没必要在网页版上也实现吧。不过,后来觉得,还是网页版的方便多了,因为不需要自己安装程序啊,至少自己的电脑里面不会因多一个应用程序,而很乱。但是,又苦恼于web版的美图秀秀,不管是在没有网络的日子呢,还是在像乌龟般慢吞吞的校园中,都不能使用,又觉得还是本地电脑上的应用方便。于是乎,一直在猜想着,能不能有基于web的应用程序,既需要安装应用程序,又不依赖于网络的,那该有多好啊~
   这不,最近看到一个概念,web离线应用,真是完美诠释了我想要说的了,很有兴趣的,就可是了这个话题的旅行了。
    <!doctype html>
<html manifest="demo.appcache">
<!--<html manifest="/.../demo_html.appcache">使用这个,加载应用程序的web缓存.使用manifest这个属性的页面,会在用户对其进行访问的时候,都会自动缓存为.appcache文件。其中,有一点非常重要的是,manifest文件需要正确配置MIME-type,即“text/cahe-manifest”,必须在web服务器上进行配置才行。
完整的manifest文件例子:
CACHE MANIFEST
#2012-02-21 v1.0.0(这个注释行)
/theme.css
/logo.gif
/main.js

NETWORK
login.asp

FALLBACK
/html5/404.html

manifest文件分为三部分:
CACHE MANIFEST——在此标题下列出的文件将在首次下载后进行缓存(包含/theme.css,/logo.gif,/main.js,这就是为什么,在下面那个页面一个简单的js代码也要使用js加载,这样是为了达到在缓存中的下载与加载使用。当manifest文件加载之后,浏览器就会从网站的根目录下载这三个文件,所以,无论用户何时与因特网断开连接,这些资源依然是可用的)
NETWORK——在此标题下列出的文件需要与服务器的链接,且不会被缓存(login.asp,在此目录下标识的,则表明该文件永远都不会被缓存,同时离线时事不可用的。也可以使用*来表示,其他的所有资源都需要网络连接)
FALLBACK——在此标题下列出的文件规定当页面无法访问时的回退页面(这个目录,表示如果无法建立因特网连接的话,则用404.html替代目录下的所有文件,这个就是我们经常所见的一个错误网页)
-->
<head>
<meta charset="utf-8">
<title>HTML5应用程序缓存</title>
</head>
<!--HTML5,可以创建cache manifest文件,来创建一个web应用的离线版本(web应用的理离线版本,通俗的来说,就是一个应用程序在基于浏览器的同时,不需要安装客户端程序的同时,也不依赖于网络,就可以通过浏览器打开一个应用。举例子说明,比如office程序吧,我们在自己电脑上安装了office的桌面版本,安装也比较麻烦的。同时,我们也发现,网络上有office的在线版本的,可以在线同样适用office工具。但是,我们发现,这样的在线office工具是需要联网才能获取到服务的,而web应用程序的离线化,其实就是,同时免去了安装本地office的同时,又不需要联网,就可以基于浏览器打开一个web应用。这就不可避免的,需要通过浏览器,在我们本地电脑上存放一些web应用的缓存了,然后就可以在没有英特网的时候进行访问。)
web应用程序缓存的优势:所有浏览器均支持应用程序缓存,除了IE
1.离线浏览——用户可在应用离线时使用它们
2.速度——已缓存资源加载得更快
3.减少服务器负载——浏览器将只从服务器下载更新/更改过得资源。-->
<body>
<script type="text/javascript">
function getDateTime()//该函数照例子来说,是放在demo_time.js文件里,然后再<script>那里进行src加载的
{
var d=new Date();
document.getElementByIdx_x("timePara").innerHTML=d;
}
</script>
<!--关于缓存的生命周期:
web应用一旦被缓存,就会一直存在,除非:
1.用户清空浏览器缓存
2.manifest文件被修改
3.由程序来更新应用缓存-->
<p id="timePara"><button onClick="getDateTime()">获取日期和事件</button></p>
<p>请打开<a href="html5_html5_manifest.html" target="_blank">这个页面</a>,然后脱机浏览页面,页面中的脚本和图像依然可用</p>
<!--在这里,应该是加载了<html manifest="..appcache">这里的缓存文件,才得以执行的,由于本人不会构造什么.appcache文件,也没有这样的文件,所以做不了测试-->
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值