缓存与IndexedDB

本文介绍了如何进行离线检测,结合navigator.onLine和HTML5事件实现。接着讲解了应用缓存的工作原理,包括status属性和应用缓存事件。最后深入探讨IndexedDB,详细阐述了异步操作的数据库创建、表的建立以及数据添加和游标查询的过程。
摘要由CSDN通过智能技术生成

(一)离线检测

单独使用navigator.onLine不能确定网络连通,配合两个HTML5事件使用

//测试网络连通
if(navigator.onLine) {
    //正常任务
}else {
    //离线任务
}
EventUtils.addHandler(window, "online", function() {
   })
EventUtils.addHandler(window, "offline", function() {
   })

页面加载后,最好先通过navigator.onLine取得初始状态,然后再用两个事件监听。

(二)应用缓存

appcache是浏览器缓存的一部分,描述文件里面写了离线后要用的文件,描述文件的类型是text/cache-manifest
applicationCache对象的status属性,表示应用缓存的状态

状态值 描述
0 无缓存
1 应用缓存未更新
2 下载描述文件检查更新
3 下载中
4 更新完成
5 废弃,缓存描述文件不存在

应用缓存的事件

事件 描述
checking 查找更新触发
error 更新下载期间出错
noupdate 描述文件无变化
downloading 开始下载缓存
process 下载过程持续触发
updateready 下载完并且能通过swapCache时触发
cached 缓存完整时触
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值