html5 Web storage
来源:互联网 发布:淘宝开店视频教学视频 编辑:程序博客网 时间:2024/05/22 10:27
web storage可以以key/value的方式保存数据,让我们的app在离线的情况下,依然可以读取上次浏览的记录。
web storage 和 cookie的区别
可储存的资料量大小不同,cookie的容量大约只能存4KB,Web Storage的容量一般是5MB,不同浏览器可能不同
cookie可以放在http的头部发到服务器,服务器可以操作cookie,web storage则不可以。
web storage 分sessionStorage 和localStorage,他们区别如下:
sessionStorage属于会话级存储,当浏览器标签关闭或者浏览器关闭,数据便删除
localStorage属于本地会话存储,浏览器关闭,数据也不会删除
sessionStorage和localStorage存储区域都和网站域名有关,不同网站域名不能访问各自的web storage
sessionStorage和localStorage api接口一样
length只读属性,获取对象key/value的记录条目
key(n)获取对象记录条目中第n条记录的key,可以通过该key获取value
getItem(key) 通过key获取对象中一条记录数据
setItem(key,value)设置一条记录,如果记录不存在就插进,若存在则更新数据
removeItem(key)通过key删除一条记录
clear() 清空对象数据
sessionStorage保存用户购物车数据
//html代码<p>商品列表</p> <ul> <li><input type = "checkbox" id = "1" value = "T袖"> T袖</li> <li><input type = "checkbox" id = "2" value = "帽子"> 帽子</li> <li><input type = "checkbox" id = "3" value = "鞋子"> 鞋子</li> <li><input type = "checkbox" id = "4" value = "外套"> 外套</li> </ul> <button type = "button" id = "buy">查看购物车</button> <button type = "button" id = "clear">清空购物车</button><br> 总共买了多少:<span id = "length"></span><br> 买了什么:<span id = "buywhat"></span>//js代码var $checkbox = $("input[type=checkbox]");var $btn = $("#buy");var $clear = $("#clear")$checkbox.on("click",function(){ if($(this).is(":checked")){ window.sessionStorage.setItem($(this).attr("id"),$(this).attr("value"));//添加一条记录 }else{ window.sessionStorage.removeItem($(this).attr("id"),$(this).attr("value"));//删除一条记录 }});$btn.on("click",function(){ var length = window.sessionStorage.length;//获取记录条目 $("#length").text(length); var temp = "" ; for(var i = 0 ;i < length ;i++){ var key = window.sessionStorage.key(i); //获取key var value = window.sessionStorage.getItem(key);//通过key获取value temp += value + ","; } $("#buywhat").text(temp);})$clear.on("click",function(){ window.sessionStorage.clear(); //清空数据});window.onload = function(){ //关闭标签或浏览器重新加载数据,查看session里面是否有数据 var length = window.sessionStorage.length;//获取记录条目 $("#length").text(length);}
获取服务器新闻列表数据放在localStorage ,断开服务器链接,app通过读取localStorge数据,将之前浏览记录展现在屏幕上
//html代码<p>新闻列表</p><ul id = "newslist"></ul>//js代码news.reqData(); //请求数据var news = { /** * 请求数据 */ reqData : function(){ var that = this ; $.ajax({ //利用ajax请求远程数据 url : "xxx/reqData", dataType : "json", success : function(data){//加载数据成功,将最新的数据放到localStroage window.localStorage.setItem("news",data); that.initNewsList(data); }, error : function(error){ that.initNewsList(window.localStorage.getItem("news"));//服务链接超时或者服务发生错误,都直接从本地获取数据 } }); }, /** * 初始化数据 */ initNewsList : function(newslist){ var arr = new Array(); for(var i = 0 ;i < newslist.length ;i++){ var con = arr.contact(this.newTemp(newslist[i])); } $("#newslist").append($(con.join(""))); }, /** * 数据模版 */ newsTemp : function(news){ return ["<li>"+news.title+"</li>"]; }}
浏览器支持情况
- 转HTML5 web storage
- HTML5 Web Storage 特性
- HTML5之WEB Storage
- HTML5 Web Storage 特性
- HTML5 Web Storage用法
- HTML5 Web Storage 特性
- HTML5 Web Storage
- HTML5 Web Storage代码
- HTML5开发 web storage
- HTML5的Web Storage
- HTML5 Web Storage
- html5 Web storage
- html5 web storage 存储
- HTML5 Web Storage
- HTML5中Web Storage
- HTML5 Web Storage
- Html5之web storage
- html5之web storage
- 在Asp.Net MVC中使用AngularJS的路由
- HDU 1253 胜利大逃亡【广搜】
- spring控制器
- hdu5297Y sequence
- 监控系统、工具的重要性
- html5 Web storage
- c# 数据类型占用字节数
- zookeeper文章地址
- 牌型种数
- Cocoapods的使用 导入第三方类库
- 自然语言处理工具包MALLET教程-中文版安装使用指南
- Warning: No instrumentation runner found for the launch, using android.test.InstrumentationTestRunne
- Problem B: 复制字符串
- 1009_2的N次方