js实现数据持久化

来源:互联网 发布:贵阳大数据交易所地址 编辑:程序博客网 时间:2024/06/05 18:39

在写js事件时,常常遇到点击一个事件,然后在若干时间以后需要知道最近一次点击的事件的结点。比如这里:


我点击树节点1,再点击tab2,然后我再来回切换tab,假如最后一次点击tab时在tab2上,这时,我希望点击另一个树节点2,但是这时传到后台没有所点tab的标记,自然不会将tab的值传到后台,就算在tab点击事件中设置了标记,在点击树节点时也会被临时销毁了,此时需要做的是点击tab时将值持久化,缓存起来,然后下次刷新的时候用,简单而言,代码就是下面的情况:

1)判断本地存储是否可用:

  1. if(window.localStorage) {  
  2.  // localStorge可用  
  3.  }else {  
  4. // localStorge不可用  
  5.  } 
2)存储数据

[javascript] view plain copy
 print?
  1. // 获取本地存储对象  
  2. var localStorage =window.localStorage;  
  3. // 存储  
  4. localStorage.setItem("key",content);
3)取出数据

[javascript] view plain copy
 print?
  1. var myKey =localStorage.getItem("key"); 
4)
[javascript] view plain copy
 print?
  1. localStorage.clear();

以上是我查看博客http://blog.csdn.net/cordova/article/details/50853452中所显示的代码段,在我自己的项目中我是这样写的:

1)点击tab事件(两个tab事件)实现数据持久化



2)点击树节点时取出持久化数据并判断


3)然后进行对应的数据传值与渲染

4)销毁localStorage(注意,该事件的销毁应该放在事件外面,因为点击一次tab以后可能会多次点击树节点,如果在方法内把持久化的值销毁以后,下一次点击树节点时就会导致取到的值为空)



OK,完成以上,就会出现自己想要的效果 ! bingo~


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 户口村里不接收怎么办 准迁入证明过期怎么办 家用水压力不够怎么办 消防水压力不够怎么办 家里明线太难看怎么办 个人停交社保怎么办 电话话筒有问题怎么办 电话听筒有问题怎么办 中学毕业证丢了怎么办 外地户口上高中怎么办 数学思维反应慢怎么办 不小心逆行了怎么办 格力手机老卡顿怎么办? 华为3g手机充不上电怎么办 外地上成都牌照怎么办 小汽车牌照坏了怎么办 买车上郑州牌照怎么办 汽车前牌照丢失怎么办 有人套我车牌怎么办 在本地怎么办外地车牌 二手车卖了车牌怎么办 科目四预约失败怎么办 车子过户了车牌怎么办 检车没有保险怎么办 异地超速12分怎么办 驾驶证考试过期了怎么办 买了库存车怎么办 车龄长了油耗高怎么办 新车发现补过漆怎么办 魅蓝note3内存不足怎么办 汽车安全检测证怎么办 a证被扣12分怎么办 突发事作后事故单位怎么办 如果遇到突发事故怎么办? 班级遇到突发事故怎么办 高速上出车祸怎么办? 安卓车载中控大屏卡怎么办 车辆交通信息卡怎么办 成都焊工压力容器证怎么办 天车钢丝绳绞住怎么办 受伤了怎么办安全教案