jQuery操作cookie

web开发过程中如果网站有一部分信息是存储在cookie中并与服务器交互的话,那么前台有时就会遇到需要对cookie中信息进行操作的情况,一个最典型的例子就是在前台判断用户是否登录过当前所访问的网站。

可以用js原生的代码操作cookie,不过对于已经习惯在前台使用jquery的人员来说,最好能有一种直接扩展到jquery实例对象中的方法来统一操作风格,这里记录一个个人感觉还算简洁的方案。

$.extend({
cookie : function(name, val) {
if (!val) {
var a = document.cookie.match(RegExp("(^|\s*)" + name + "=([^;]*)(;|$)"));
return a ? decodeURIComponent(a[2]) : null;
} else {
document.cookie = name + "=" + escape(val);
}
},
removeCookie : function(name) {
var expires = new Date();
expires.setTime(expires.getTime() - 1);
document.cookie = name + "=;expires=" + expires.toGMTString();
}
}); 

这样的话使用起来就统一风格了,以登录为例:

取值--$.cookie("logonFlag");

赋值--$.cookie("logonFlag", true);

删除--$.removeCookie("logonFlag");

cookie方法作为赋值功能使用时还可以提供第三个参数扩展,由用户对需要赋值的cookie提供可选的属性并赋值。

实际使用时发现这里的赋值/取值有些限制,对某些特殊符号(比如“>”、“<”符号)不能有效的编码/解码,不过总体来说还是很方便使用的。

以上所述是小编给大家介绍的jQuery操作cookie,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对鸟哥教程(niaoge.com)网站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#niaoge.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。