jquery cookie的用法总结


Posted in Javascript onNovember 18, 2013

jQuery cookie是个很好的cookie插件,大概的使用方法如下
example $.cookie('name', ‘value');
设置cookie的值,把name变量的值设为value
example $.cookie('name', ‘value', {expires: 7, path: ‘/', domain: ‘jquery.com', secure: true});
新建一个cookie 包括有效期 路径 域名等
example $.cookie('name', ‘value');
新建cookie
example $.cookie('name', null);
删除一个cookie

var account= $.cookie('name');
取一个cookie(name)值给myvar

代码如下

jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        var path = options.path ? '; path=' + options.path : '';
        var domain = options.domain ? '; domain=' + options.domain : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

然后看了下Discuz!中对cookie的操作方法
如下,发现少了个遍历用;分割的数组的处理
function getcookie(name) {
var cookie_start = document.cookie.indexOf(name);
var cookie_end = document.cookie.indexOf(";", cookie_start);
return cookie_start == -1 ? '' : unescape(document.cookie.substring(cookie_start + name.length + 1, (cookie_end > cookie_start ? cookie_end : document.cookie.length)));
} 
function setcookie(cookieName, cookieValue, seconds, path, domain, secure) {
var expires = new Date();
expires.setTime(expires.getTime() + seconds);
document.cookie = escape(cookieName) + '=' + escape(cookieValue)
+ (expires ? '; expires=' + expires.toGMTString() : '')
+ (path ? '; path=' + path : '/')
+ (domain ? '; domain=' + domain : '')
+ (secure ? '; secure' : '');
}
Javascript 相关文章推荐
Firebug 字幕文件JSON地址获取代码
Oct 28 Javascript
JS 各种网页尺寸判断实例方法
Apr 18 Javascript
当json键为数字时的取值方法解析
Nov 15 Javascript
JavaScript对象之深度克隆介绍
Dec 08 Javascript
JavaScript检测实例属性, 原型属性
Feb 04 Javascript
跟我学习javascript的for循环和for...in循环
Nov 18 Javascript
详解Js模板引擎(TrimPath)
Nov 22 Javascript
Vuejs 单文件组件实例详解
Feb 09 Javascript
JS中判断字符串存在和非空的方法
Sep 12 Javascript
Vue中CSS动画原理的实现
Feb 13 Javascript
javascript事件监听与事件委托实例详解
Aug 16 Javascript
js实现简单五子棋游戏
May 28 Javascript
JS JSON对象转为字符串的简单实现方法
Nov 18 #Javascript
javascript获取ckeditor编辑器的值(实现代码)
Nov 18 #Javascript
js 页面元素的几个用法总结
Nov 18 #Javascript
封装的jquery翻页滚动(示例代码)
Nov 18 #Javascript
javascript窗口宽高,鼠标位置,滚动高度(详细解析)
Nov 18 #Javascript
简单的代码实现jquery定时器
Nov 17 #Javascript
禁止空格提交表单的js代码
Nov 17 #Javascript
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
destoon后台网站设置变成空白的解决方法
2014/06/21 PHP
php计算给定时间之前的函数用法实例
2015/04/03 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
PHP类的自动加载机制实现方法分析
2019/01/10 PHP
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
2015/12/08 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
Bootstrap table两种分页示例
2016/12/23 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
让你5分钟掌握9个JavaScript小技巧
2018/06/09 Javascript
详解Vue源码之数据的代理访问
2018/12/11 Javascript
vue2.0结合Element-ui实战案例
2019/03/06 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
2019/11/13 Javascript
javascript实现弹幕墙效果
2019/11/28 Javascript
基于vue的video播放器的实现示例
2021/02/19 Vue.js
使用Python制作获取网站目录的图形化程序
2015/05/04 Python
python爬虫实战之最简单的网页爬虫教程
2017/08/13 Python
python3安装speech语音模块的方法
2018/12/24 Python
Python并发:多线程与多进程的详解
2019/01/24 Python
自学python的建议和周期预算
2019/01/30 Python
python实现文字版扫雷
2020/04/24 Python
浅谈python量化 双均线策略(金叉死叉)
2020/06/03 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
Keras构建神经网络踩坑(解决model.predict预测值全为0.0的问题)
2020/07/07 Python
python操作redis数据库的三种方法
2020/09/10 Python
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
全球在线商店:BerryLook
2019/04/14 全球购物
关于Java String的一道面试题
2013/09/29 面试题
如何保障Web服务器安全
2014/05/05 面试题
教师求职信
2014/06/17 职场文书
2015年度优秀员工推荐信
2015/03/23 职场文书
Java实现二维数组和稀疏数组之间的转换
2021/06/27 Java/Android
解决ObjectMapper.convertValue() 遇到的一些问题
2021/06/30 Java/Android
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript