有关localStorage的一个小demo
来源:互联网 发布:淘宝亚瑟士全是假的 编辑:程序博客网 时间:2024/06/06 03:54
IE8以及以上的主流浏览器都支持,但是在使用之前也要先判断浏览器是否支持,它和sessionStorage基本上是一样的,它俩的区别就在于存储的时间不同,前者可永久存储,后者是当窗口一关闭就不复存在,我比较倾向于前者。
这个小demo是动态的将文本框中的值加到表格中,并提供删除功能,我用的是文本框的oninput事件,为了支持IE又用了onpropertychange事件,为什么不直接用change事件,因为这个事件在文本框失去焦点后才会触发,给不了我想要的结果
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <input type="text" value="" id="inp" onpropertychange="show()" oninput="show()"/> <script src="jquery-1.11.0.js" type="text/javascript" charset="utf-8"></script> <table border=1 style="width:100%" id="table1" cellpadding="3" cellspacing="0"> <tr> <th>sku</th> <th>数量</th> <th>操作</th> </tr> <tr> <td>sku</td> <td>1</td> <td><span>删除</span></td> </tr> </table> <script type="text/javascript"> //验证该浏览器是否支持localStorage if(window.localStorage){ var store=window.localStorage; }else{ alert('你的浏览器不支持localStorage!'); } //用事件委托绑定事件,否则动态生成的标签可能没有该事件 $('table').on('click','span',function(){ var val=$(this).parent().siblings('td:first').text(); //删除指定的内容 store.removeItem(val); //删除全部内容 //store.clear(); $(this).parents('tr').remove(); }) //初始化,将localStorage中的数据显示到相应表格 function init(){ for(var i=0;i<store.length;i++){ //通过key方法遍历键值信息 var sku=store.key(i); var num=store.getItem(sku); $("#table1").append("<tr id='"+sku+"' ><td>"+sku+"</td><td id='"+sku+"_num' >"+num+"</td><td><span>删除</span></td></tr>"); } } init(); function show(){ var val=document.getElementById('inp').value; //将input中的值作为键,值为input中的值出现的次数 var num = store.getItem(val); if(num){ num ++; store.setItem(val,num); }else{ num =1; store.setItem(val,num); } if($("#"+val+"_num").text()){ $("#"+val+"_num").text(num); }else{ $("#table1").append("<tr id='"+val+"' ><td>"+val+"</td><td id='"+val+"_num' >"+num+"</td><td><span>删除</span></td></tr>"); } var arr3=[];//以键值对的形式存到数组中 for(var i=0;i<store.length;i++){ var sku=store.key(i); var num=store.getItem(sku); arr3.push({sku:num,key:sku}); } } </script> </body></html>
0 0
- 有关localStorage的一个小demo
- 一个有关录音的小demo
- HTML 5 本地存储----LocalStorage 小DEMO
- html5-localstorage操作(小demo)
- WCF的一个小Demo
- xml的一个小Demo
- DotNetMQ的一个小demo
- 简单的一个小Demo
- LocalStorage 的一个漏洞
- 有关JS控制时间的几个小Demo
- 有关敬业的一个小故事
- 有关ajax的一个小错误
- 有关scrollViewDidEndDecelerating的一个小问题
- 有关scrollViewDidEndDecelerating的一个小问题
- 一个有关于static的小程序
- 有关SFINAE的一个小应用
- javascript读写cookie的一个小demo
- 关于分页的一个小demo
- STM32F103_USART_GPIO配置及相应的IO口设置
- redis 安装及布署
- CountDownLatch 多线程同步辅助类用法
- Intellij IDEA调试功能使用总结
- iOS 中文转UTF-8编码
- 有关localStorage的一个小demo
- C/C++ 哈夫曼树的构造、编码以及译码
- 【hpuoj】循环数组最大子段和
- 2017随想
- C#多线程同步(九)【volatile】
- HBase 常用Shell命令
- 关于百度地图动态事件调用的使用
- OpenGL: 纹理映射中的双线性插值
- 从法律角度解析不良资产