基于jquery的cookie的用法


Posted in Javascript onJanuary 10, 2011

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实现的完美渐变弹出层效果代码
Apr 02 Javascript
Raphael带文本标签可拖动的图形实现代码
Feb 20 Javascript
javascript删除数组重复元素的方法汇总
Jun 24 Javascript
jQuery带进度条全屏图片轮播特效代码分享
Jun 28 Javascript
JQuery datepicker 用法详解
Dec 25 Javascript
原生JavaScript制作微博发布面板效果
Mar 11 Javascript
Backbone中View之间传值的学习心得
Aug 09 Javascript
node.js中的事件处理机制详解
Nov 26 Javascript
JS瀑布流实现方法实例分析
Dec 19 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
May 21 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
Oct 28 Javascript
JavaScript实现滚动加载更多
Dec 27 Javascript
基于jquery的高性能td和input切换并可修改内容实现代码
Jan 09 #Javascript
IE6中使用position导致页面变形的解决方案(js代码)
Jan 09 #Javascript
原生Js与jquery的多组处理, 仅展开一个区块的折叠效果
Jan 09 #Javascript
JS中动态添加事件(绑定事件)的代码
Jan 09 #Javascript
jquery的extend和fn.extend的使用说明
Jan 09 #Javascript
js对象之JS入门之Array对象操作小结
Jan 09 #Javascript
理解JavaScript中的对象 推荐
Jan 09 #Javascript
You might like
S900/ ETON E1-XM 收音机
2021/03/02 无线电
php基础知识:函数基础知识
2006/12/13 PHP
PHP Google的translate API代码
2008/12/10 PHP
Laravel 5框架学习之表单
2015/04/08 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
2017/04/25 PHP
JS 分号引起的一段调试问题
2009/06/18 Javascript
Jquery 表格合并的问题分享
2011/09/17 Javascript
通过jQuery源码学习javascript(二)
2012/12/27 Javascript
简单选项卡 js和jquery制作方法分享
2014/02/26 Javascript
jQuery中on绑定事件后引发的事件冒泡问题如何解决
2016/05/25 Javascript
javascript如何定义对象数组
2016/06/07 Javascript
JavaScript实现点击按钮复制指定区域文本(推荐)
2016/11/25 Javascript
js eval函数使用,js对象和字符串互转实例
2017/03/06 Javascript
ES6新特性三: Generator(生成器)函数详解
2017/04/21 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
2018/09/06 jQuery
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
[05:45]Ti4观战指南(下)
2014/07/07 DOTA
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
简单掌握Python的Collections模块中counter结构的用法
2016/07/07 Python
python中利用Future对象异步返回结果示例代码
2017/09/07 Python
Python中协程用法代码详解
2018/02/10 Python
Python对数据进行插值和下采样的方法
2018/07/03 Python
Python反射和内置方法重写操作详解
2018/08/27 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
Python3.7安装keras和TensorFlow的教程图解
2020/06/18 Python
Python文件路径名的操作方法
2019/10/30 Python
css3的图形3d翻转效果应用示例
2014/04/08 HTML / CSS
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
英国顶级珠宝品牌之家:John Greed
2018/06/09 全球购物
化学教师自荐信范文
2013/12/28 职场文书
安全宣传标语
2014/06/10 职场文书
2015年乡镇人大工作总结
2015/04/22 职场文书
演讲开头怎么书写?
2019/08/06 职场文书
JavaScript实现简单拖拽效果
2021/09/15 Javascript