在项目中需要利用到html5的localstorage。但在利用这个属性的时候却发现无法达到预定目标。经过不断的检查及排除,最后发现原因所在:

项目中使用的浏览器是支持localstorage的,但是却无法使用,具体原因未知(推测可能需要对浏览器的环境变量进行相关配置才能直接使用,但我对此无能为力)。

最后,通过上网查询,发现可以使用cookie实现localstorage的功能(当然数据保存是有期限的),代码如下:

<script  type="text/javascript">

//创建localStorage1
var localStorage1Class = function(){
this.options = {
expires : **,
}
}
localStorage1Class.prototype = {
//初实化。添加过期时间
init:function(){
var date = new Date();
date.setTime(date.getTime() + **);
this.setItem('expires',date.toGMTString());
},
//内部函数参数说明(key) 检查key是否存在
findItem:function(key){
var bool = document.cookie.indexOf(key);
if( bool < ){
return true;
}else{
return false;
}
},
//得到元素值 获取元素值 若不存在则返回 null
getItem:function(key){
var i = this.findItem(key);
if(!i){
var array = document.cookie.split(';')
for(var j=;j<array.length;j++){
var arraySplit = array[j];
if(arraySplit.indexOf(key) > -){
var getValue = array[j].split('=');
//将 getValue[0] trim删除两端空格
getValue[] = getValue[].replace(/^\s\s*/, '').replace(/\s\s*$/, '')
if(getValue[]==key){
return getValue[];
}else{
return 'null';
}
}
}
}
},
//重新设置元素
setItem:function(key,value){
var i = this.findItem(key)
document.cookie=key+'='+value;
},
//清除所有cookie 参数
remove:function(){
var array = document.cookie.split(';')
for(var cl = ;cl<array.length;cl++){
var date = new Date();
date.setTime(date.getTime() - );
document.cookie =array[cl] +"=a; expires=" + date.toGMTString();
}
}
}
var localStorage1 = new localStorage1Class();
localStorage1.init();
</script>

转载:http://blog.csdn.net/xiaosong521/article/details/7733424

用cookie实现localstorage功能的更多相关文章

  1. 浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

    浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互. 一.cookie和session cookie和session都是用来跟踪浏览器 ...

  2. 深入了解浏览器存储:对比Cookie、LocalStorage、sessionStorage与IndexedDB

    摘要: 对比Cookie.LocalStorage.sessionStorage与IndexedDB 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 随着移动网络的发展与演化,我 ...

  3. session,cookie,sessionStorage,localStorage的区别及应用场景

    session,cookie,sessionStorage,localStorage的区别及应用场景 浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟 ...

  4. session,cookie,sessionStorage,localStorage的区别

    浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互. 一.cookie和session cookie和session都是用来跟踪浏览器 ...

  5. 缓存session,cookie,sessionStorage,localStorage的区别

    https://www.cnblogs.com/cencenyue/p/7604651.html(copy) 浅谈session,cookie,sessionStorage,localStorage的 ...

  6. [转] 浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

    浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互. 一.cookie和session cookie和session都是用来跟踪浏览器 ...

  7. cookie和localstorage sessionStorage的概念、区别、使用场景

    本文分为三大板块: 1 webStorage的概念 2 cookie/localStorage/sessionStorage的介绍 3 三者之间的共同点和区别 **所有代码引用均来自 作者:OBKor ...

  8. 彻底弄清楚session,cookie,sessionStorage,localStorage的区别及应用场景(面试向)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_94 客户端状态保持是一个老生常谈的问题了,归根结底追踪浏览器的用户身份及其相关数据无非就是以下四种方式:session,cooki ...

  9. 【JSP】Cookie的使用及保存中文,并用Cookie实现购物车功能

    Cookie是服务器存放在客户端的一些数据,比如密码,以及你曾经访问过的一些数据. 设置Cookie //设置cookie Cookie cookie = new Cookie("TOM&q ...

随机推荐

  1. SpringMvc多文件上传简单实现

    public ResponseItem uploadFile(MultipartHttpServletRequest request,FileItem fileItem,PageData pd) { ...

  2. 1.4.2 solr字段类型--(1.4.2.2)solr附带的字段类型

    1.4.2 solr字段类型 (1.4.2.1) 字段类型定义和字段类型属性. (1.4.2.2) solr附带的字段类型 (1.4.2.3) 使用货币和汇率 (1.4.2.4) 使用Dates(日期 ...

  3. javaEE学习笔记-单例模式

    定义: 确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式的三要素: (1)私有的静态的成员变量 (2)私有的构造方法 (3)公共的静态的入口点方法 单例模式的分类: (1)饿 ...

  4. java中的容器问题

    小小的总结一下java中的容器问题. 一.三个知识点 1.迭代器 1).java.util.Interator + hasnext(); next(); remove(); 2).java.lang. ...

  5. Java Script基础(三) 函数

    一.JavaScript中的函数 在JavaScript中,函数类似于Java中的方法,是执行特定功能的代码块,可以重复调用.JavaScript中的函数分为两种,一种是系统函数,另一种是自定义函数. ...

  6. html + js 右 点击 弹出 菜单

    页面 引用jar 包 <link rel="stylesheet" href="../../style/zui.min.css" type="t ...

  7. 剑指Offer13 链表倒数第K个结点

    /************************************************************************* > File Name: 13_KthNod ...

  8. Intent.ACTION_PICK

    在常见的Activity Action Intent常量中,ACTION_PICK  android.intent.action.PICK 是“选择数据”的意思,来简单的分享一下我知道的Intent. ...

  9. Android之所有API汇总

    这里就是所有的Android API,包含所有的API类:http://www.android-doc.com/reference/packages.html

  10. C# tostring 格式化输出 (转)

    C 货币 2.5.ToString("C") ¥2.50 D 十进制数 25.ToString("D5") 00025 E 科学型 25000.ToString ...