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 相关文章推荐
JavaScript 继承详解(三)
Jul 13 Javascript
jQuery 操作下拉列表框实现代码
Feb 22 Javascript
JavaScript的类型转换(字符转数字 数字转字符)
Aug 30 Javascript
jQuery点击自身以外地方关闭弹出层的简单实例
Dec 24 Javascript
js打开新窗口方法整理
Feb 17 Javascript
angularjs指令中的compile与link函数详解
Dec 06 Javascript
jquery移动节点实例
Jan 14 Javascript
AngularJS ng-style中使用filter
Sep 21 Javascript
信息滚动效果的实例讲解
Sep 18 Javascript
vue中axios解决跨域问题和拦截器的使用方法
Mar 07 Javascript
Puppet的一些技巧
Sep 17 Javascript
vue.js 子组件无法获取父组件store值的解决方式
Nov 08 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
ADODB的数据库封包程序库
2006/12/31 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
2016/05/06 PHP
基于PHP制作验证码
2016/10/12 PHP
详解php用curl调用接口方法,get和post两种方式
2017/01/13 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
2018/03/30 PHP
Laravel框架数据库迁移操作实例详解
2020/04/06 PHP
jQuery 判断页面元素是否存在的代码
2009/08/14 Javascript
删除select中所有option选项jquery代码
2013/08/12 Javascript
JS获取当前网页大小以及屏幕分辨率等
2014/09/05 Javascript
jquery向上向下取整适合分页查询
2014/09/06 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
VUE实现日历组件功能
2017/03/13 Javascript
微信JS-SDK选取手机照片上传功能
2017/04/21 Javascript
js获取地址栏参数的两种方法
2017/06/27 Javascript
React服务端渲染(总结)
2017/07/01 Javascript
Node Puppeteer图像识别实现百度指数爬虫的示例
2018/02/22 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
Vue 构造选项 - 进阶使用说明
2020/08/14 Javascript
Python基于高斯消元法计算线性方程组示例
2018/01/17 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
python剪切视频与合并视频的实现
2020/03/03 Python
查看keras的默认backend实现方式
2020/06/19 Python
CSS3 特效范例整理
2011/08/22 HTML / CSS
苹果音乐订阅:Apple Music
2018/08/02 全球购物
有影响力的人、名人和艺术家的官方商品:Represent
2019/11/26 全球购物
学院书画协会部门岗位职责
2013/12/01 职场文书
《争吵》教学反思
2014/02/15 职场文书
酒店行政人事部经理职务说明书
2014/02/26 职场文书
党员干部观看《周恩来四个昼夜》思想汇报
2014/09/10 职场文书
青年联谊会致辞
2015/07/31 职场文书
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android
SQL实战演练之网上商城数据库商品类别数据操作
2021/10/24 MySQL
Java实战之课程信息管理系统的实现
2022/04/01 Java/Android