Javascript-离线应用和客户端存储

2018-03-06  本文已影响0人  Tom36

一、离线检测

开发离线应用的第一步是要知道设备是在线还是离线,HTML5为此定义了一个navigator.onLine属性,这个属性值为true 表示设备能上网,值为false 表示设备离线。

if(navigator.onLine){
    //正常工作
}else{
    //执行离线状态时的工作
}

HTML5 还定义了两个事件:online 和offline。当网络从离线变为在线或者从在线变为离线时,分别触发这两个事件

二、应用缓存

HTML5 的应用缓存(application cache),或者简称为appcache,是专门为开发离线Web 应用而设计的。Appcache 就是从浏览器的缓存中分出来的一块缓存区。要想在这个缓存中保存数据,可以使用一个描述文件(manifest file),列出要下载和缓存的资源。

三、数据存储

1、Cookie

2、IE用户数据

3、Web存储机制

Web Storage 的目的是克服由cookie 带来的一些限制,当数据需要被严格控制在客户端上时,无须持续地将数据发回服务器。Web Storage 的两个主要目标是:
提供一种在cookie 之外存储会话数据的途径;
提供一种存储大量可以跨会话存在的数据的机制。

//使用方法存储数据
sessionStorage.setItem("name", "Tom");
// 使用属性存储数据
sessionStorage.book = "Professional JavaScript";
globalStorage["wrox.com"].name = "Tom";
var name = globalStorage["wrox.com"].name;
localStorage.setItem("name", "Tom");
localStorage.book = "Professional JavaScript";
var name = localStorage.getItem("name");
var book = localStorage.book;

4、IndexedDB

上一篇下一篇

猜你喜欢

热点阅读