html5的appcache

黎豆子 2013-02-28

从HTML5开始,支持将页面资源(包括.html、.css、.js、.png)等缓存起来,从而实现离线应用

步骤如下:

1、准备appcache清单文件

清单文件可以使用任何扩展名,只需要在步骤2中,在webserver里注册即可

这里起名为demo.appcache,文件内容是

CACHE MANIFEST

CACHE:
5.html
5.css
jquery-1.8.0.js
5.js

2、注册appcache清单文件的MIME

对于tomcat,在%TOMCAT_HOME%/conf/web.xml里配置

<mime-mapping>
        <extension>appcache</extension>
        <mime-type>text/cache-manifest</mime-type>
    </mime-mapping>

3、在要缓存的html里关联清单文件

<!DOCTYPE html>
<html manifest="demo.appcache">

<head>
	<meta charset="UTF-8">
	<link type="text/css" rel="stylesheet" href="5.css" />
	<script type="text/javascript" src="jquery-1.8.0.js"></script>
	<script type="text/javascript" src="5.js"></script>
	<title>5</title>
</head>

<body>
	<div id="myDiv">hello world</div>
	<button id="btn">run</button>
</body>

</html>

4、编程(javascript)控制applicationCache对象

$(document).ready(function() {
	
	$("#btn").click(showCache);

	function showCache(){
		alert(applicationCache.status);
		applicationCache.update();
	}

});

5、效果

通过上面的配置,5.html页面相关的资源就会被支持ApplicationCache的浏览器缓存起来,支持离线操作

关于applicationCache对象,其实还有一些别的API,支持状态和事件绑定等,详细的文档可参见:

1http://www.thecssninja.com/javascript/how-to-create-offline-webapps-on-the-iphone

2http://www.w3schools.com/html/html5_app_cache.asp

相关推荐