HTML5中怎么使用网络存储存储键值对的数据

本篇内容介绍了“HTML5中怎么使用网络存储存储键值对的数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了临泽免费建站欢迎大家使用!

1.使用本地存储

我们使用localStorage对象来访问本地存储,他返回存储对象,存储使用存储键值对的数据,,他有下面一些属性和方法:

clear():清楚存储的键值对数据;

getItem():通过键获取值值;

key():通过索引获取键值;

长度:返回键值对的个数;

removeItem():通过键移出指定数据;

setItem():添加一个键值对,当指定键的键值对存在时,则实现更新操作;

[]:通过多重下标的方式,使用密钥获取指定的值值。

存储对象允许我们存储密钥和值都是字符串形式的密钥值对数据,密钥是唯一的,意味着当我们使用setItem方法添加键值对时,如果key值已经存在的话,将实现更新的操作。

复制代码代码如下: 

<!DOCTYPE HTML>

示例</ title></p><p><style></p><p>body> * {float:left;}</p><p>表{border-colla ps e:合拢; margin-left:50px;}</p><p>, td {padding:4px;}</p><p>th {text-align:right;}</p><p>输入{border:细实黑; padding:2px;}</p><p>标签{min-width:50px; display:inline-block; text-align:right;}</p><p>#countmsg,#buttons {margin-left:50px; margin-top:5px; margin-bottom:5px;}</p><p></ style></p><p></ head></p><p><body></p><p><div></p><p><div></p><p><label>键:</ label > <输入id =“ key”占位符=“ Enter Key” /> </ div></p><p><div></p><p><label>值:</ label> <输入id =“ value”占位符=“输入值” /> </ div></p><p><div id =“ buttons”></p><p><button id =“ add”>添加</ button></p><p><button id =“ clear”>清除</ button></p><p></ div></p><p><p id =“ countmsg”>有<span id =“ count”> </ span>项目</ p></p><p></ div></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>项目计数:</ th></p><p><td id =“ count“>-</ td></p><p></ tr></p><p></ table></p><p><script></p><p>displayData();</p><p>var button = document.getElementsByTagName('button');</p><p>for(var i = 0; i <button.length; i ++){</p><p>button [i] .onclick = handleButtonPress;</p><p>var value = document.getElementById('value')。value;</p><p>localStorage.setItem(key,value);</p><p>休息;</p><p>案例'clear':</p><p>localStorage.clear();</p><p>休息;</p><p>}</p><p>displayData();</p><p>}</p><p>函数displayData(){</p><p>var tableElement = document.getElementById('data');</p><p>tableElement.innerHTML ='';</p><p>var itemCount = localStorage.length;</p><p>document.getElementById('count')。innerHTML = itemCount;</p><p>for(var i = 0; i <itemCount; i ++){</p><p>var key = localStorage.key(i);</p><p>var val = localStorage.getItem(key);</p><p>tableElement.innerHTML + ='<tr> <th>'+键+':</ th> <td>'+ val +'</ td> </ tr>';</p><p></ html></p><p>浏览器不能删除我们通过localStorage的创建的数据,除非用户删除它。</p><p>2.监听存储事件</p><p>通过本地存储存储的数据对同源的文档具有可见性,比如你打开两个镀铬浏览器访问同一个URL地址,在任何一个页面上创建的本地存储对另外一个页面也是可见的。但是如果用别的浏览器(如firefox)打开相同的网址地址,本地存储是不可见的,因为他们不同源了。来监听存储的内容发生改变的,下面我们看他包含的其他属性:</p><p>key:返回发生改变的键值;</p><p>oldValue:返回发生改变键值以前的值值;</p><p>newValue:返回发生改变键值新的值值;</p><p>网址:发生改变的URL地址;</p><p>storageArea:返回发生改变的存储对象(是本地存储还是会话存储)</p><p>下面我们看个例子:</p><p>复制代码代码如下: </p><p><!DOCTYPE HTML></p><p><html></p><p><head></p><p><title>存储空间</ title></p><p><style></p><p>表{边界折叠:折叠;}</p><p>th,td {填充:4px;}</p><p></ style></p><p></ head></p><p><body ></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>键</ th></p><p><th> oldValue </ th></p><p><th> newValue </ th></p><p><th> url </ th></p><p>< th> storageArea </ th></p><p></ tr></p><p></ table></p><p><script></p><p>var tableElement = document.getElementById('data');</p><p>window.onstorage =函数(e){</p><p>var row ='<tr>';</p><p>行+ =' <td>'+ e.key +'</ td>';</p><p>行+ ='<td>'+ e.oleValue +'</ td>';</p><p>行+ ='<td>'+ e.newValue +'</ td>';</p><p>行+ ='<td>'+ e.url +'</ td>';</p><p>行+ ='<td>'+(e.storageArea == localStorage)+'</ td> </ tr>';</p><p>tableElement.innerHTML + =行;</p><p>}</p><p></ script></p><p></ body></p><p></ html></p><p>我们在例1中增删改改存储的数据,会在例2页面上显示出来。例2在chrome浏览器中运行正常,firefox没有反应,其他浏览器没有测试。</p><p>运行结果:</p><p>3.使用session storage</p><p>session storage在使用上和本地存储一样,只是他的访问性上只进入内部页面,并且页面关闭后会消失,我们通过sessionStorage来访问它。</p><p>复制代码代码如下: </p><p><!DOCTYPE HTML></p><p><html></p><p><head></p><p><title>示例</ title></p><p><style></p><p>body> * {float:left;}</p><p>table {border-collapse:塌陷; margin-left:50px;}</p><p>th,td { padding:4px;}</p><p>th {text-align:right;}</p><p>输入{border:细实黑色; padding:2px;}</p><p>标签{min-width:50px; display:inline-block; text-align:right;}</p><p>#countmsg ,#buttons {margin-left:50px; margin-top:5px; margin-bottom:5px;}</p><p></ style></p><p></ head></p><p><body></p><p><div></p><p><div></p><p><label>键:</ label> <输入id =“ key” placeholder =“ Enter Key” /> </ div></p><p><div></p><p><label>值:</ label> <输入id =“ value”占位符=“输入值” /> </ div></p><p><div id =“ buttons”></p><p><button id =“ add”>添加</ button></p><p><button id =“ clear”>清除</ button></p><p></ div></p><p><p id =“ countmsg”>有<span id =“ count”> </ </ span>项目</ p></p><p></ div></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>项目计数:</ th></p><p><td id =“ count”>-</ td></p><p></ tr></p><p></ table></p><p><iframe src =“ storage.html” width =“ 500” height =“ 175”> </ iframe></p><p><script></p><p>displayData();</p><p>var button = document.getElementsByTagName(“ button”);</p><p>for(var i = 0; i <button.length; i ++){</p><p>button [i]。onclick = handleButtonPress;</p><p>}</p><p>函数handleButtonPress(e){</p><p>开关(e.target.id){</p><p>案例'add':</p><p>var key = document.getElementById(“ key”)。value;</p><p>var value = document.getElementById(“ value”)。value;</p><p>sessionStorage.setItem(key,value);</p><p>休息;</p><p>案例'clear':</p><p>sessionStorage.clear();</p><p>休息;</p><p>}</p><p>displayData();</p><p>}</p><p>函数displayData(){</p><p>var tableElement = document.getElementById('data');</p><p>tableElement.innerHTML ='';</p><p>var itemCount = sessionStorage.length;</p><p>document.getElementById('count')。innerHTML = itemCount;</p><p>for(var i = 0; i <itemCount; i ++){</p><p>var key = sessionStorage.key(i);</p><p>var val = sessionStorage.getItem(key);</p><p>tableElement.innerHTML + =“ <tr> <th>” +键+“:</ th> <td>” + val +“ </ td> </ tr></p><p></ html></p><p>你在例3中做任何修改,例2的页面不会发生任何改变。</p><p>“HTML5中怎么使用网络存储存储键值对的数据”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!</p> <br> 网页名称:HTML5中怎么使用网络存储存储键值对的数据 <br> 转载源于:<a href="http://lszwz.com/article/jdihej.html">http://lszwz.com/article/jdihej.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/dicihh.html">免费ssl证书申请步骤,安全证书的价格是多少-创新互联</a> </li><li> <a href="/article/dicgoi.html">Kubernetes的HPA自动扩容与缩容是什么?-创新互联</a> </li><li> <a href="/article/dicijh.html">Java自定义注解的详解-创新互联</a> </li><li> <a href="/article/dicgod.html">最详细的Java线程池原理解析-创新互联</a> </li><li> <a href="/article/dicijc.html">C++中map的基本操作-创新互联</a> </li> </ul> </div> </div> <div class="f_service_con"> <div class="h_fumin"> <div class="h_fumin_lei"> <div class="h_fumin_lei_tu"><img src="/Public/Home/images/f_service01.png"></div> <p>售后响应及时</p><span>7×24小时客服热线</span> </div> <div class="h_fumin_lei"> <div class="h_fumin_lei_tu"><img src="/Public/Home/images/f_service02.png"></div> <p>数据备份</p><span>更安全、更高效、更稳定</span> </div> <div class="h_fumin_lei"> <div class="h_fumin_lei_tu"><img src="/Public/Home/images/f_service03.png"></div> <p>价格公道精准</p><span>项目经理精准报价不弄虚作假</span> </div> <div class="h_fumin_lei"> <div class="h_fumin_lei_tu"><img src="/Public/Home/images/f_service04.png"></div> <p>合作无风险</p><span>重合同讲信誉,无效全额退款</span> </div> </div> </div> <div class="footerbar"> <div class="footer-t"> <div class="f-box"> <div class="f-1"> <div class="f-t"> <h2>联系我们</h2> <span>TEL</span> </div> <div class="f-b"> <h1><a href="tel:13518219792" rel="nofollow">135-1821-9792</a></h1> <h1><a href="tel:028-86922220" rel="nofollow">028-86922220</a></h1> <p>地址:乐山市太升南路288号锦天国际</p> </div> </div> <div class="f-2"> <div class="f-t"> <h2>快捷导航</h2> <span>Shortcut</span> </div> <div class="f-b"> <ul > </ul> <ul > <li><a href="/jianshe" title="乐山网站建设">乐山网站建设</a></li> <li><a href="/jianshe#ym_websiteBox2" title="品牌网站建设">品牌网站建设</a></li> <li><a href="/jianshe#ym_websiteBox1" title="企业网站建设">企业网站建设</a></li> <li><a href="/jianshe#ym_websiteBox4" title="集团网站建设">集团网站建设</a></li> <li><a href="/jianshe#ym_websiteBox4_2" title="外贸网站建设">外贸网站建设</a></li> <li><a href="/jianshe#ym_websiteBox4_5" title="企业宣传视频">企业宣传视频</a></li> </ul> <ul > <li><a href="/weixin" title="微信开发">微信开发</a></li> <li><a href="/weixin#item1" title="公众号开发">公众号开发</a></li> <li><a href="/weixin#item2" title="微商城建设">微商城建设</a></li> <li><a href="/weixin#item3" title="微官网建设">微官网建设</a></li> <li><a href="/weixin#item4" title="小程序开发">小程序开发</a></li> </ul> <ul> <li><a href="/case/" title="网站作品案例">网站作品案例</a></li> <li><a href="/case/" title="品牌网站案例">品牌网站案例</a></li> <li><a href="/case/" title="集团网站案例">集团网站案例</a></li> <li><a href="/case/" title="企业网站案例">企业网站案例</a></li> <li><a href="/case/" title="外贸网站案例">外贸网站案例</a></li> <li><a href="/case/" title="营销网站案例">营销网站案例</a></li> </ul> <ul style="margin:0;"> <li><a href="/about/">小谭建站</a></li> <li><a href="/about/">公司简介</a></li> <li><a href="/about#ab_item3">企业文化</a></li> <li><a href="/contact">联系我们</a></li> <li><a href="/Pay.html">付款方式</a></li> <li><a href="/jianshe#ym_websiteBox8">售后服务</a></li> </ul> <div style="clear:both;"></div> </div> </div> <div class="f-3"> <div class="f-t"> <h2>二维码</h2> <span>QR CODE</span> </div> <div class="f-b"> <ul> <li><img src="/Public/Home/images/fewm.png"> <p>微信公众号</p> </li> <li style="margin: 0"><img src="/Public/Home/images/fewm2.png"> <p>手机端网站</p> </li> <div style="clear:both;"></div> </ul> </div> </div> <div style="clear:both;"></div> </div> </div> <div class="footer-about"> <div class="w1200">乐山小谭建站工作室是一家专注从事于高品质视觉体验及互联网设计开发,<a href="/" target="_blank">乐山网站建设</a>,<a href="/jianshe" target="_blank">乐山网站设计</a>,<a href="/jianshe" target="_blank">乐山网页设计</a>,<a href="/jianshe" target="_blank">乐山网站制作</a>,<a href="/jianshe#ym_websiteBox2" target="_blank">品牌网站建设</a>,<a href="/jianshe#ym_websiteBox3" target="_blank">营销网站建设</a>,<a href="/jianshe#ym_websiteBox4" target="_blank">集团网站建设</a>,<a href="/jianshe#ym_websiteBox1" target="_blank">企业网站建设</a>,<a href="/jianshe#ym_websiteBox4_2" target="_blank">外贸网站建设</a>,<a href="/jianshe#ym_websiteBox4_3" target="_blank">响应式网站建设</a>,<a href="/weixin#item4" target="_blank">小程序开发</a>,<a href="/weixin" target="_blank">微信开发</a>,<a href="/jianshe#ym_websiteBox4_4" target="_blank">企业形象设计</a>,<a href="/jianshe#ym_websiteBox4_5" target="_blank">企业宣传视频</a>等服务,小谭建站位于乐山市龙岗区大运软件小镇,小谭建站拥有经验丰富的高级网站建设工程师和一流的网页高端设计人员,具备各种规模与类型网站建设的雄厚实力,在网站建设领域树立了自己独特的设计风格。 </div> <div class="friend-links"> <h6 class="clearfix"> <span class="tilte">友情链接</span> <a class="exchagne" href="http://wpa.qq.com/msgrd?v=3&uin=631063699&site=qq&menu=yes">交换友情链接</a> </h6> <div class="link-list clearfix"> <div class="link-slider"> <a href="http://www.cqhuaxiang.cn/" title="重庆花箱" target="_blank">重庆花箱</a>   <a href="https://www.cdcxhl.com/tuoguan/ershu/" title="成都二枢机房" target="_blank">成都二枢机房</a>   <a href="http://www.gyjike.cn/" title="川银永信" target="_blank">川银永信</a>   <a href="https://www.cdxwcx.com/tuiguang/" title="成都SEO优化" target="_blank">成都SEO优化</a>   <a href="http://www.36103.cn/" title="成都做网站" target="_blank">成都做网站</a>   <a href="http://www.idckuai.cn/" title="网站空间" target="_blank">网站空间</a>   <a href="http://www.muyebzx.com/" title="木业包装箱" target="_blank">木业包装箱</a>   <a href="http://www.cxjianzhan.com/" title="优化排名" target="_blank">优化排名</a>   <a href="http://www.xhgfhy.com/" title="犀浦防纹窗" target="_blank">犀浦防纹窗</a>   <a href="https://www.xwcx.net/" title="成都机柜租用" target="_blank">成都机柜租用</a>    </div> </div> </div> </div> <div class="footer-b"> <div class="f-box"> <ul> <li><a href="/jianshe#ym_websiteBox6" target="_blank">服务流程</a></li> <li><a href="/jianshe#ym_websiteBox8" target="_blank">售后服务</a></li> <li><a href="/about/" target="_blank">联系我们</a></li> <li><a href="#" target="_blank">付款方式</a></li> <li><a href="#" target="_blank">网站地图</a></li> <li><a href="#" target="_blank">sitemap</a></li> <li> <p> <script data-cfasync="false" src="/Public/Home/js/email-decode.min.js"></script> </p> </li> <div style="clear:both;"></div> </ul> <p class="copy">Copyright © 2022 青羊区小谭信息技术咨询服务工作室 乐山建站工作室 All Rights Reserved   <a href="http://www.miibeian.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2021004003号-25</a> <a style="display:none" target="_blank" href="###"><img style="vertical-align:middle" border="0" src="" width="65" height="25" /></a> </p> <div style="clear:both;"></div> </div> </div> <div class="sj_footer"> <div class="f-box"> <ul> <li><a href="/jianshe" target="_blank">网站建设</a></li> <li><a href="/jianshe#ym_websiteBox6" target="_blank">服务流程</a></li> <li><a href="/jianshe#ym_websiteBox8" target="_blank">售后服务</a></li> <li><a href="#" target="_blank">付款方式</a></li> <li><a href="/about/" target="_blank">关于我们</a></li> <li><a href="#" target="_blank">网站地图</a></li> <div style="clear:both;"></div> </ul> <p class="copy">Copyright © 2022 青羊区小谭信息技术咨询服务工作室 乐山建站工作室 </p> <p class="copy"> <a href="http://www.miibeian.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2021004003号-25</a>  <a href="###" target="_blank"><img src="/Public/Home/images/govicon.gif" width="20" height="28" border="0" style="border-width:0px;border:hidden; border:none;"></a></p> <div style="clear:both;"></div> </div> </div> </div> <script type='text/javascript' src='/Public/Home/js/qqkefu.js'></script> <div class="qqkefu"> <ul> <li class="qq_czaa" id="130"><b class="a"></b>135-1821-9792</li> <li class="qq_czaa" id="130"><a href="tencent://message/?uin=1683211881"><b class="b"></b>业务咨询QQ</a></li> <li class="qq_czaa" id="130"><a href="javascript:showDiv()"><b class="f"></b>提交合作意向表</a></li> <li class="qq_czb"> <b class="c"></b> <div class="erweima"> <p><img src="/Public/Home/images/right_erweima.png"></p> </div> </li> <li class="top"><span></span></li> </ul> </div> <div id="popDiv" class="mydiv" style="display:none;"> <a class="mydiv_clk" href="javascript:closeDiv()">X</a> <div class="mydiv_list"> <div class="c_f_title"><span class="c_f_t">合作意向表</span></div> <div class="c_f_con"> <form id="form1" name="form1" class="mess_form" method="post" action="/post_order"> <input name='enews' type='hidden' value='AddFeedback'> <input name="bid" value="1" type="hidden"> <input type="hidden" name="ecmsfrom" value="9"> <input type="hidden" name='title' value="客户提交需求"> <li class="c_n"><span>公司名称</span> <dl><input name='gsname' id='gsname' type="text"></dl> </li> <li class="c_n"><span>邮箱</span> <dl><input name='gemail' id='gemail' type="text"></dl> </li> <li class="c_n xmm"> <div class="xmm_01"><span>姓名</span> <dl class="c_n_i"><input name='name' id='name' type="text"></dl> </div> <div class="xmm_01"><span style="text-align:center">电话</span> <dl class="c_n_i"><input name="tel" type="text"></dl> </div> </li> <li class="c_tser">您需要的服务</li> <li class="clearfix"> <dd><label><input type="radio" name='hobby' id='hobby' value="高端网站建设"><span>高端网站建设</span></label></dd> <dd><label><input type="radio" name='hobby' id='hobby' value="我需要做微信营销"><span>我需要做微信营销</span></label></dd> <dd><label><input type="radio" name='hobby' id='hobby' value="要找长期合作,需要年度服务"><span>要找长期合作,需要年度服务</span></label></dd> <dd><label><input type="radio" name='hobby' id='hobby' value="我需要做购物商城"><span>我需要做购物商城</span></label></dd> <dd><label><input type="radio" name='hobby' id='hobby' value="我需要网站改版"><span>我需要网站改版</span></label></dd> <dd><label><input type="radio" name='hobby' id='hobby' value="其他"><span>其他</span></label></dd> </li> <li class="c_tser">您关注的地方</li> <li class="clearfix"> <dd><label><input type="radio" name='hobby2' id='hobby2' value="对功能要求比较高"><span>对功能要求比较高</span></label></dd> <dd><label><input type="radio" name='hobby2' id='hobby2' value="对设计创意要求比较高"><span>对设计创意要求比较高</span></label></dd> <dd><label><input type="radio" name='hobby2' id='hobby2' value="需要可以购物支付"><span>需要可以购物支付</span></label></dd> <dd><label><input type="radio" name='hobby2' id='hobby2' value="搜索引擎排名"><span>搜索引擎排名</span></label></dd> </li> <li class="c_tser">预算</li> <li class="clearfix clearfix2"> <dd><label><input type="radio" name='hobby3' id='hobby3' value="一万以内"><span>一万以内</span></label> </dd> <dd><label><input type="radio" name='hobby3' id='hobby3' value="1-3万"><span>1-3万</span></label> </dd> <dd><label><input type="radio" name='hobby3' id='hobby3' value="3-5万"><span>3-5万</span></label> </dd> <dd><label><input type="radio" name='hobby3' id='hobby3' value="5万以上"><span>5万以上</span></label> </dd> <dd><label><input type="radio" name='hobby3' id='hobby3' value="需招投标"><span>需招投标</span></label> </dd> </li> <li class="c_n" style="border-top:1px solid #eee; padding-top:10px"><span>验证码</span> <dl class="c_n_i yzmm"><input type="text" name='code' id='code' value=""></dl><span style="text-align:center"><img src="/Public/Home/images/1661eb19783442c38063791555cd0d80.gif" onclick="this.src=this.src + '?'" width="100" height="40"></span> </li> <li class="clearfix"> <dd class="submit"><input name='submit' type="submit" value="提交需求"></dd> </li> </form> </div> </div> </div> <div id="bg" class="bg" style="display:none;"></div> <div id='popIframe' class='popIframe' frameborder='0'></div> <script> //提交需求选项 $(document).ready(function (e) { $(".mess_form").submit(function () { if ($("#gsname").val() == "") { alert("请填写您的公司名称!"); $("#gsname").focus(); return false; } if ($("#gemail").val() == "") { alert("请填写您的邮箱"); $("#gemail").focus(); return false; } if ($("#name").val() == "") { alert("请填写您的姓名!"); $("#name").focus(); return false; } if ($("#tel").val() == "") { alert("请填写您的电话!"); $("#tel").focus(); return false; } if ($("#hobby").val() == "") { alert("请选择您需要的服务!"); $("#hobby").focus(); return false; } if ($("#hobby2").val() == "") { alert("请选择您关注的地方!"); $("#hobby2").focus(); return false; } if ($("#hobby3").val() == "") { alert("请选择您的预算!"); $("#hobby3").focus(); return false; } if ($("#code").val() == "") { alert("请填写正确的验证码!"); $("#code").focus(); return false; } }); }); </script> <script language="javascript" type="text/javascript"> //提交需求窗口 function showDiv() { document.getElementById('popDiv').style.display = 'block'; document.getElementById('popIframe').style.display = 'block'; document.getElementById('bg').style.display = 'block'; } function closeDiv() { document.getElementById('popDiv').style.display = 'none'; document.getElementById('bg').style.display = 'none'; document.getElementById('popIframe').style.display = 'none'; } </script> <script type="text/javascript" src="/Public/Home/js/scrolltopcontrol.js"></script> <script type="text/javascript" src="/Public/Home/js/su_new.js"></script> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>