基于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 相关文章推荐
jQuery 打造动态渐变按钮 详细图文教程
Apr 25 Javascript
jquery 查找新建元素代码
Jul 06 Javascript
Extjs优化(二)Form表单提交通用实现
Apr 15 Javascript
javascript中定义私有方法说明(private method)
Jan 27 Javascript
JavaScript实现复制内容到粘贴板代码
Mar 31 Javascript
javascript日期比较方法实例分析
Jun 17 Javascript
BootStrap入门教程(二)之固定的内置样式
Sep 19 Javascript
微信小程序 WXDropDownMenu组件详解及实例代码
Oct 24 Javascript
深入理解vue.js中$watch的oldvalue与newValue
Aug 07 Javascript
ng-alain表单使用方式详解
Jul 10 Javascript
JS如何生成动态列表
Sep 22 Javascript
利用vue3+ts实现管理后台(增删改查)
Oct 30 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
PHP 数据库树的遍历方法
2009/02/06 PHP
解析PHP中的file_get_contents获取远程页面乱码的问题
2013/06/25 PHP
开启PHP的伪静态模式
2015/12/31 PHP
php set_include_path函数设置 include_path 配置选项
2016/10/30 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
PHP实现的简单组词算法示例
2018/04/10 PHP
PHP实现提高SESSION响应速度的几种方法详解
2019/08/09 PHP
IE不出现Flash激活框的小发现的js实现方法
2007/09/07 Javascript
window.onload 加载完毕的问题及解决方案(下)
2009/07/09 Javascript
Javascript中的变量使用说明
2010/05/18 Javascript
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
javascript实现TreeView 无刷新展开的实例代码
2013/07/13 Javascript
js中生成map对象的方法
2014/01/09 Javascript
jQuery $.extend()用法总结
2014/06/15 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
详解Jquery 遍历数组之$().each方法与$.each()方法介绍
2017/01/09 Javascript
js实现导航吸顶效果
2017/02/24 Javascript
Vue.js上下滚动加载组件的实例代码
2017/07/17 Javascript
客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解
2017/08/26 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
[02:54]DOTA2英雄基础教程 暗影牧师戴泽
2013/12/05 DOTA
python k-近邻算法实例分享
2014/06/11 Python
搞清楚 Python traceback的具体使用方法
2019/05/13 Python
Python3之手动创建迭代器的实例代码
2019/05/22 Python
python实现列表中最大最小值输出的示例
2019/07/09 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
python 模块导入问题汇总
2021/02/01 Python
移动端html5判断是否滚动到底部并且下拉加载
2019/11/19 HTML / CSS
澳大利亚冲浪和时尚服装网上购物:SurfStitch
2017/07/29 全球购物
文明青少年标兵事迹材料
2014/01/28 职场文书
社团活动总结书
2014/06/27 职场文书
小学生思想品德评语
2014/12/31 职场文书
云冈石窟导游词
2015/02/04 职场文书
用人单位的规章制度,怎样制定才是有效的?
2019/07/09 职场文书