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 相关文章推荐
jquery遍历input取得input的name
Apr 27 Javascript
javascript date格式化示例
Sep 25 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
Oct 31 Javascript
jQuery实现Tab菜单滚动切换的方法
Sep 21 Javascript
AngularJS 表达式详细讲解及实例代码
Jul 26 Javascript
简单实现js选项卡切换效果
Feb 09 Javascript
JS实现简单抖动效果
Jun 01 Javascript
JavaScript中数组常见操作技巧
Sep 01 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
Nov 22 Javascript
详解webpack多页面配置记录
Jan 22 Javascript
JavaScript 2018 中即将迎来的新功能
Sep 21 Javascript
Node.js学习之内置模块fs用法示例
Jan 22 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循环语句 for()与foreach()用法区别介绍
2012/09/05 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
常用PHP封装分页工具类
2017/01/14 PHP
JQuery 获取和设置Select选项的代码
2010/02/07 Javascript
浅谈jquery中delegate()与live()
2015/06/22 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
Webpack打包慢问题的完美解决方法
2017/03/16 Javascript
bootstrap switch开关组件使用方法详解
2017/08/22 Javascript
JS和Canvas实现图片的预览压缩和上传功能
2018/03/30 Javascript
Node.js log4js日志管理详解
2018/07/31 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
2018/12/10 Javascript
JavaScript中的惰性载入函数及优势
2020/02/18 Javascript
利用Vue的v-for和v-bind实现列表颜色切换
2020/07/17 Javascript
python 输出一个两行字符的变量
2009/02/05 Python
Python break语句详解
2014/03/11 Python
python列表的增删改查实例代码
2018/01/30 Python
如何在django里上传csv文件并进行入库处理的方法
2019/01/02 Python
Python socket模块ftp传输文件过程解析
2019/11/05 Python
Pytorch提取模型特征向量保存至csv的例子
2020/01/03 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
2020/02/25 Python
Python包资源下载路径报404解决方案
2020/11/05 Python
玉兰油美国官网:OLAY美国
2018/10/25 全球购物
模具专业毕业生自荐书范文
2014/02/19 职场文书
毕业生就业意向书
2014/04/01 职场文书
科长竞聘演讲稿
2014/05/16 职场文书
党的群众路线教育实践活动个人承诺书
2014/05/22 职场文书
和谐家庭演讲稿
2014/05/24 职场文书
小学五年级语文上册教学计划
2015/01/22 职场文书
给老婆的检讨书
2015/01/27 职场文书
社区植树节活动总结
2015/02/06 职场文书
2015年物资管理工作总结
2015/05/20 职场文书
2015银行年终工作总结范文
2015/05/26 职场文书
2016大一新生入学教育心得体会
2016/01/23 职场文书
php字符串倒叙
2021/04/01 PHP
如何用Python搭建gRPC服务
2021/06/30 Python