基于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 相关文章推荐
js获取页面description的方法
May 21 Javascript
Spring MVC中Ajax实现二级联动的简单实例
Jul 06 Javascript
vue图片加载与显示默认图片实例代码
Mar 16 Javascript
Vue插件写、用详解(附demo)
Mar 20 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
Jul 02 Javascript
React Native实现地址挑选器功能
Oct 24 Javascript
vue获取当前点击的元素并传值的实例
Mar 09 Javascript
看看“疫苗查询”小程序有温度的代码
Jul 31 Javascript
vue头部导航动态点击处理方法
Nov 02 Javascript
微信小程序带动画弹窗组件使用方法详解
Nov 27 Javascript
jQuery zTree插件快速实现目录树
Aug 16 jQuery
Vue前端项目部署IIS的实现
Jan 06 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
奉献出一个封装的curl函数 便于调用(抓数据专用)
2013/07/22 PHP
php生成QRcode实例
2014/09/22 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
Chrome中JSON.parse的特殊实现
2011/01/12 Javascript
基于jQuery的输入框在光标位置插入内容, 并选中
2011/10/29 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
2015/11/25 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
全面了解JS中的匿名函数
2016/06/29 Javascript
vue Render中slots的使用的实例代码
2017/07/19 Javascript
vue.js或js实现中文A-Z排序的方法
2018/03/08 Javascript
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
layer弹出层 iframe层去掉滚动条的实例代码
2018/08/17 Javascript
JavaScript 性能提升之路(推荐)
2019/04/10 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
2020/07/17 Javascript
javascript实现固定侧边栏
2021/02/09 Javascript
python 数据加密代码
2008/12/24 Python
彻底理解Python list切片原理
2017/10/27 Python
python re模块findall()函数实例解析
2018/01/19 Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
2018/08/16 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
详解Python time库的使用
2019/10/10 Python
python时间与Unix时间戳相互转换方法详解
2020/02/13 Python
Python魔术方法专题
2020/06/19 Python
Python QT组件库qtwidgets的使用
2020/11/02 Python
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
法国和欧洲海边和滑雪度假:Pierre & Vacances
2017/01/04 全球购物
测绘工程专业个人自我评价
2013/12/01 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
珍爱生命演讲稿
2014/05/10 职场文书
献爱心大型公益活动策划方案
2014/09/15 职场文书
居委会工作总结2015
2015/05/18 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
MySQL学习之基础操作总结
2022/03/19 MySQL
mysql查看表结构的三种方法总结
2022/07/07 MySQL