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 相关文章推荐
prototype 的说明 js类
Sep 07 Javascript
javascript之querySelector和querySelectorAll使用说明
Oct 09 Javascript
javascript中数组中求最大值示例代码
Dec 18 Javascript
浏览器窗口加载和大小改变事件示例
Feb 27 Javascript
JS中判断JSON数据是否存在某字段的方法
Mar 07 Javascript
JavaScript实现控制打开文件另存为对话框的方法
Apr 17 Javascript
JS实现鼠标滑过显示边框的菜单效果
Sep 21 Javascript
ES6通过babel转码使用webpack使用import关键字
Dec 13 Javascript
jQuery点击导航栏选中更换样式的实现代码
Jan 23 Javascript
js中的面向对象入门
Mar 06 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
实例解析ES6 Proxy使用场景介绍
Jan 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
老生常谈PHP面向对象之标识映射
2017/06/21 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
网页里控制图片大小的相关代码
2006/06/25 Javascript
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
js输出列表实现代码
2010/09/12 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
2013/09/06 Javascript
Web开发必知Javascript技巧大全
2016/02/23 Javascript
JS功能代码集锦
2016/05/04 Javascript
Nodejs下DNS缓存问题浅析
2016/11/16 NodeJs
原生js实现打字动画游戏
2017/02/04 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
JS实现颜色动态淡化效果
2017/03/06 Javascript
基于vue实现swipe轮播组件实例代码
2017/05/24 Javascript
vue+axios实现文件下载及vue中使用axios的实例
2018/09/21 Javascript
如何从零开始手写Koa2框架
2019/03/22 Javascript
jQuery实现的解析本地 XML 文档操作示例
2020/04/30 jQuery
Vue如何将页面导出成PDF文件
2020/08/17 Javascript
python urllib urlopen()对象方法/代理的补充说明
2017/06/29 Python
Django查询数据库的性能优化示例代码
2017/09/24 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
python存储16bit和32bit图像的实例
2018/12/05 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
2018/12/07 Python
Django Rest framework之认证的实现代码
2018/12/17 Python
Python 实现中值滤波、均值滤波的方法
2019/01/09 Python
pytorch:torch.mm()和torch.matmul()的使用
2019/12/27 Python
如何使用Python自动生成报表并以邮件发送
2020/10/15 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
服装厂厂长岗位职责
2013/12/27 职场文书
大学计划书范文800字
2014/08/14 职场文书
2014国庆节商场促销活动策划方案
2014/09/16 职场文书
教师学习八项规定六项禁令思想汇报
2014/09/27 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
助学感谢信范文
2015/01/21 职场文书
幼儿园保育员随笔
2015/08/14 职场文书