基于JQuery的cookie插件


Posted in Javascript onApril 07, 2010

简单使用方法:

<html> 
<head> 
<title>JQuery-Cookie插件</title> 
<script type="text/javascript" src="jquery-1.4.js"></script> 
<script type="text/javascript" src="jquery.cookie.js"></script> 
</head> 
<body> 
<a href="#">设置cookie1</a><br> 
<a href="#">设置cookie2</a><br> 
<a href="#">获取cookie</a><br> 
<a href="#">删除cookie</a><br> 
</body> 
</html> 
<script type="text/javascript"> 
$(function(){ 
var COOKIE_NAME = 'test_cookie'; 
//设置cookie,通过时间间隔 
$('a').eq(0).click(function() { 
$.cookie(COOKIE_NAME, 'test', { path: '/', expires: 1 }); 
return false; 
}); 
// 设置cookie,到期时间 
$('a').eq(1).click(function() { 
var date = new Date(); 
date.setTime(date.getTime() + (1 * 24 * 60 * 60 * 1000)); 
$.cookie(COOKIE_NAME, 'test', { path: '/', expires: date }); 
return false; 
}); 
// 获取 cookie 
$('a').eq(2).click(function() { 
alert($.cookie(COOKIE_NAME)); 
return false; 
}); 
// 删除cookie 
$('a').eq(3).click(function() { 
$.cookie(COOKIE_NAME, null, { path: '/' }); 
return false; 
}); 
}); 
</script>

插件的源代码也很简单:
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(); 
} 
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 { 
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]); 
if (cookie.substring(0, name.length + 1) == (name + '=')) { 
cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); 
break; 
} 
} 
} 
return cookieValue; 
} 
};

cookie的插件

另外可以参考:
jquery cookie插件代码类

Javascript 相关文章推荐
JScript中使用ADODB.Stream判断文件编码的代码
Jun 09 Javascript
基于jquery实现的鼠标拖拽元素复制并写入效果
Aug 23 Javascript
js 判断一个元素是否在页面中存在
Dec 27 Javascript
javascript 实现键盘上下左右功能的小例子
Sep 15 Javascript
js实现点击添加一个input节点
Dec 05 Javascript
JavaScript模板引擎用法实例
Jul 10 Javascript
Node.js的npm包管理器基础使用教程
May 26 Javascript
Angularjs 动态改变title标题(兼容ios)
Dec 29 Javascript
基于jQuery实现数字滚动效果
Jan 16 Javascript
Vue入门之animate过渡动画效果
Apr 08 Javascript
JavaScript简易计算器制作
Jan 17 Javascript
vue组件创建的三种方式小结
Feb 03 Javascript
JQuery为textarea添加maxlength属性的代码
Apr 07 #Javascript
JavaScript和JQuery实用代码片段(一)
Apr 07 #Javascript
jquery 学习笔记一
Apr 07 #Javascript
ext jquery 简单比较
Apr 07 #Javascript
jQuery asp.net 用json格式返回自定义对象
Apr 07 #Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 #Javascript
js 小贴士一星期合集
Apr 07 #Javascript
You might like
php UTF-8、Unicode和BOM问题
2010/05/18 PHP
php中根据变量的类型 选择echo或dump
2012/07/05 PHP
php单态设计模式(单例模式)实例
2014/11/18 PHP
php通过baihui网API实现读取word文档并展示
2015/06/22 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
2016/09/13 PHP
jQuery 连续列表实现代码
2009/12/21 Javascript
JS 树形递归实例代码
2010/05/18 Javascript
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
很不错的两款Bootstrap Icon图标选择组件
2016/01/28 Javascript
基于Bootstrap实现下拉菜单项和表单导航条(两个菜单项,一个下拉菜单和登录表单导航条)
2016/07/22 Javascript
js控住DOM实现发布微博效果
2016/08/30 Javascript
AngularJS入门教程之路由机制ngRoute实例分析
2016/12/13 Javascript
深入理解Node中的buffer模块
2017/06/03 Javascript
JavaScript实现的浏览器下载文件的方法
2017/08/09 Javascript
分分钟学会vue中vuex的应用(入门教程)
2017/09/14 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
javascript实现文件拖拽事件
2018/03/29 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
Python中函数参数调用方式分析
2018/08/09 Python
Python 给某个文件名添加时间戳的方法
2018/10/16 Python
Django之模型层多表操作的实现
2019/01/08 Python
python写程序统计词频的方法
2019/07/29 Python
执行Django数据迁移时报 1091错误及解决方法
2019/10/14 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
2019年Java面试必问之经典试题
2012/09/12 面试题
办公室文员自荐书
2014/02/03 职场文书
工商行政管理专业求职书
2014/05/23 职场文书
星级党支部申报材料
2014/05/31 职场文书
2014全年工作总结
2014/11/27 职场文书
模范教师材料大全
2014/12/16 职场文书
2015年领导干部廉洁自律工作总结
2015/05/26 职场文书
浅谈redis缓存在项目中的使用
2021/05/20 Redis
Oracle 11g数据库使用expdp每周进行数据备份并上传到备份服务器
2022/06/28 Oracle