----- 缓存文件

- 使用UTF-8编码
- 以Cache Manifest 开头
- 三个基本部分

CACHE MANIFEST
menu.html
menu.js
# login requires network
connection
NETWORK:
login.php
FALLBACK:
/ /menu.html
CACHE:
style/innbar.css

- NetWork:此类文件需要从网络访问
- FallBack:缓存找不到的时候显示它
- Cache:真正要缓存的内容

----- 离线状态

- window.applicationCache

取值 名称 含义
---------------------------------------------------------------------
0 UnCached 页面完全没有被缓存,可能是没被设定或者尚未被下载
1 IDLE 已经被下载并可以访问
2 CheCking 正在检查缓存是否需要更新
3 Downloading 发现新版本正在更新
4 UpDateReady 已经下载完成,下次离线访问就可用
5 ObSolete 缓存清单文件访问失败,此页面会被从缓存中清除

window.applicationCache.status // 获取状态

----- 离线事件

window.applicationCache.add EventListener("progress",
function(e) {
alert("新文件下载");
}, false);

名称 描述
--------------------------------------------------
checking 检查在manifest里面的文件是否有更新
noupdate 没有找到新文件
donwloading 下载中
progress 任何文件被下载这一事件都会被唤起
cached 所有缓存都被下载完
updateready 由于manifest,所有文件被重新下载完毕
obsolete 由于manifest清空,文件找不到
error 各种错误,比如manifest文件格式错

------ 更新缓存方法

- JS中提供update()和swapCache()直接更新缓存

<button onclick="window.applicationCache.update();">更新缓存</button>
window.applicationCache.addEventListene r("updateready",
function(e) {window.applicationCache.swapCache();
alert("New Cache in action");
}, false);

- 可以使用SetInterval()定期唤醒更新

------ 检测是否在线

- window.navigator.onLine

window.addEventLis tener("online", function() {
alert("你是在线的");
}, false);
window.addEventLis tener("offline", function()
{
alert("你是离线的");
}, false);

- 不测路由,只测连接,所以可能联网当不能上网

HTML5之缓存的更多相关文章

  1. HTML5离线缓存(Application Cache)

    HTML5离线缓存又名Application Cache,是从浏览器的缓存中分出来的一块缓存区,要想在这个缓存中保存数据,可以使用一个描述文件(manifest file),列出要下载和缓存的资源. ...

  2. HTML5 离线缓存管理库

    一.HTML5离线缓存技术 支持离线缓存是HTML5中的一个重点,离线缓存就是让用户即使在断网的情况下依然可以正常的运行应用.传统的本地存储数据的方式有 localstorage,sessionsto ...

  3. HTML5本地缓存数据

    //HTML5本地缓存数据 function putObj(key, data) { if (!!window.localStorage) { var obj = { "key": ...

  4. HTML5离线缓存问题

    HTML5离线缓存问题 1.应用程序缓存 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问. ...

  5. HTML5 Web缓存&运用程序缓存&cookie,session

    在介绍HTML5 web缓存前,来认识一下cookie和session: session: 由于HTTP是无状态的,你是谁?你干了什么?抱歉服务器都是不知道的. 因此session(会话)出现了,它会 ...

  6. HTML5 离线缓存Appcache

    创建一个和html同名的manifest文件,比如页面为index.html,那么可以建一个index.manifest的文件,然后给index.html的html标签添加如下属性即可: <ht ...

  7. html5离线缓存使用

    html5 离线缓存使用以及注意事项 1.index.html中加入离线缓存的声明文件 如:<!DOCTYPE html><html manifest="test.appc ...

  8. 设置清除html5页面缓存

    设置清除html5页面缓存 html5端设置 meta 标签: <meta http-equiv="Pragma" content="no-cache" ...

  9. node.js与HTML5离线缓存

    最近正学到HTML5的离线缓存,却看到需要配置服务器.一下子就懵了,毕竟服务器的有关配置一般是很复杂的,而node.js的服务器是自己的代码生成的,这下要怎么配置?在网上搜索了很久,都没用关于node ...

  10. HTML5离线缓存攻击测试

    本实验采用局域网模拟,通过修改本地HOSTS文件来模拟域名以及DNS欺骗.合法网站使用Linux CentOS7的apache服务器搭建,IP为192.168.1.113,HOSTS文件中加入192. ...

随机推荐

  1. iOS开发——实用篇Swift篇&保存图片到相册

    保存图片到相册 最近在深入的学习关于swift相关技术,虽然海做不出什么好的东西,但是感觉收获不少,相信总有一样能用到,所以就总结了一下,希望大家喜欢! 1.OC中的写法 在OC中,我们需要保存图片到 ...

  2. oc-04-类的声明和实现

    //main.m //10-[掌握]类的声明和实现 //.h为类的声明,.m为类的实现,+表示类方法静态方法,-表示对象方法..h文件中的方法都是public不能更改的.变量3中访问域:public, ...

  3. android152 笔记 2

    27.谈谈UI中, Padding和Margin有什么区别? Padding 文字对边框, margin是控件对父窗体. 28. widget相对位置的完成在activity的哪个生命周期阶段实现.控 ...

  4. android139 360 黑名单 增删改查-数据库操作

    BlackNumberOpenHelper.java package com.itheima52.mobilesafe.db.dao; import android.content.Context; ...

  5. c#智能感知(设置)及实现

    1) 使用工具->选项菜单命令,选择文本编辑器->C#设置, 将上面圈出的2个复选框(自动列出成员和参数信息)打勾, 然后 Intellisense就会工作了.(如果没这么多选项,请勾选S ...

  6. 高级I/O之STREAMS

    http://en.wikipedia.org/wiki/STREAMS STREAMS(流)是系统V提供的构造内核设备驱动程序和网络协议包的一种通用方法,对STREAMS进行讨论的目的是为了理解系统 ...

  7. Python_爬虫1

    Urllib库的基本使用 那么接下来,小伙伴们就一起和我真正迈向我们的爬虫之路吧. 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的 ...

  8. ISO8583报文解析

    在此只写了一个8583报文的拆包,组包其实也差不多的. 不多说直接上文件, 具体思路过程,在解析类里面写的有. 其中包含了四个文件 8583resp.txt报文 ISO8583medata配置文件 B ...

  9. height、clientHeight、scrollHeight、offsetHeight区别

    转自 http://www.cnblogs.com/yuteng/articles/1894578.html 我们来实现test中的onclick事件    function justAtest()  ...

  10. android开发之路13(实际开发常见问题及解决办法ING)

    1.DDMS下无法浏览SDcard? 在做音乐播放器的时候,想通过eclipse中的DDMS视图将音频文件push到sd卡中,发现总是报错 :Failed to push selection: Rea ...