利用window.name实现windowStorage代码分享


Posted in Javascript onJanuary 02, 2014
//key:value|key:value
var windowStorage = {
    _inited: false,
    _data: {},
    init: function(str) {
        var tmpData, key, value, kv;
        this._inited = true;
        if (str && typeof str == 'string') {
            tmpData = str.split('|');
            for (var i = 0, len = tmpData.length; i < len; i++) {
                kv = tmpData[i].split(':');
                key = unescape(kv[0]);
                value = unescape(kv[1]);
                this._data[key] = value;
            }
        } else if (typeof str == 'object') {
            this._data = str;
        }
    },
    read: function(key) {
        if (!this._inited) {
            throw new Error('Please initialize before reading.');
        }
        return this._data[key];
    },
    write: function(key, value) {
        var str = [];
        if (!this._inited) {
            throw new Error('Please initialize before writing.');
        }
        this._data[key] = value;
        for (var k in this._data) {
            str.push(escape(k) + ':' + escape(this._data[k]));
        }
        window.name = str.join('|');
    }
};
Javascript 相关文章推荐
JavaScript中的apply()方法和call()方法使用介绍
Jul 25 Javascript
js判断字符长度及中英文数字等
Mar 19 Javascript
javascript实现的一个带下拉框功能的文本框
May 08 Javascript
javascript实现3D变换的立体圆圈实例
Aug 06 Javascript
window.onerror()的用法与实例分析
Jan 27 Javascript
dedecms页面如何获取会员状态的实例代码
Mar 15 Javascript
JS小数运算出现多为小数问题的解决方法
Jun 02 Javascript
jquery中用函数来设置css样式
Dec 22 Javascript
AngularJS中的按需加载ocLazyLoad示例
Jan 11 Javascript
常用jQuery选择器汇总
Feb 02 Javascript
基于JavaScript实现类名的添加与移除
Apr 23 Javascript
D3.js的基础部分之数组的处理数组的排序和求值(v3版本)
May 09 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
Jan 02 #Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
Jan 02 #Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
Jan 02 #Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
Jan 02 #Javascript
jQuery简单实现banner图片切换
Jan 02 #Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
Jan 02 #Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 #Javascript
You might like
isset和empty的区别
2007/01/15 PHP
PHP动态编译出现Cannot find autoconf的解决方法
2014/11/05 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP批斗大会之缺失的异常详解
2019/07/09 PHP
jQuery Validation实例代码 让验证变得如此容易
2010/10/18 Javascript
javascript与jquery中的this关键字用法实例分析
2015/12/24 Javascript
使用JavaScript为Kindeditor自定义按钮增加Audio标签
2016/03/18 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
2016/03/22 Javascript
Jquery UI实现一次拖拽多个选中的元素操作
2020/12/01 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
2018/08/10 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
2019/07/19 Javascript
JS异步宏队列微队列原理详解
2020/09/09 Javascript
[14:00]DOTA2国际邀请赛史上最长大战 赛后专访B神
2013/08/10 DOTA
[52:52]完美世界DOTA2联赛PWL S3 LBZS vs access 第一场 12.10
2020/12/13 DOTA
[01:19:33]DOTA2-DPC中国联赛 正赛 iG vs VG BO3 第一场 2月2日
2021/03/11 DOTA
学习python (2)
2006/10/31 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
2017/04/18 Python
Python解惑之整数比较详解
2017/04/24 Python
浅析Python中return和finally共同挖的坑
2017/08/18 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
python面向对象之类属性和类方法案例分析
2019/12/30 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
Python实现上下文管理器的方法
2020/08/07 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
AmazeUI 折叠面板的实现代码
2020/08/17 HTML / CSS
Made in Design英国:设计家具、照明、家庭装饰和花园家具
2019/09/24 全球购物
某公司的.net工程师面试题笔试题
2013/11/22 面试题
餐饮业的创业计划书范文
2013/12/26 职场文书
全陪导游欢迎词
2014/01/17 职场文书
国家助学金获奖感言
2014/01/31 职场文书
大学生自我推荐信范文
2015/03/24 职场文书
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
2021/06/30 SQL Server
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
2022/04/04 Python