myApp.appcache里面写了需要缓存的css、js的路径。
第一次打开页面是正常的,然后刷新页面,按说是去拿缓存的文件的,结果谷歌浏览器提示如下:
不知道为何,页面也显示不了css和js效果?
二、缓存打文件,比如视频,大概有80M。
需要在第一次打开页面的时候,视频一边播放,一边下载到客户端的指定位置。
断网的时候,直接去读取下载的位置的视频。
HTML5离线存储和本地缓存一.离线存储
有一个web应用有三个文件index.html,a.js,b.css,现在需要把js和css文件缓存起来
1.在index.html里加上<html manifest="test.manifest">
2.manifest清单格式如下
CACHE MANIFEST
#上面一句必须
#v1.0.0
#需要缓存的文件
CACHE:
a.js
b.css
#不需要缓存的文件
NETWORK:
*
#无法访问页面
FALLBACK:
404.html
3.manifest文件的mime-type必须是 text/cache-manifest类型
注意点:
1.对于每个index.html?id=1或index.html?id=2都会分别缓存index.html页面,可以通过chrome浏览器Resources/Application Cache观察
2.如果想更新缓存内容,只要修改下manifest文件即可,如改版本号v1.0.1
4.离线存储如果资源有更新,可以通过如下代码来监听,但第一次加载还会是原来的版本
window.applicationCache.addEventListener('updateready',function(e){
if(window.applicationCache.status == window.applicationCache.UPDATEREADY){
window.applicationCache.swapCache()
if(confirm("loding new?")){
window.location.reload()
}
}
},false)
二.本地缓存
localStorage.setItem("key","value")
localStorage.getItem("key","value")
localStorage.removeItem("key")
localStorage.clear()
1.本地存储永不过期,除非自己去清除
2.可以通过chrome浏览器Resources/Local Storage来查看
3.不同域下就算key相同取不到的值也不同,如localhost和127.0.0.1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)