jQuery获取cookie值及删除cookie用法实例
本文实例讲述了jQuery获取cookie值及删除cookie用法。分享给大家供大家参考,具体如下:
cookie在jquery中有指定的cookie操作类,这里先来介绍在使用cookie操作类时的一些问题,然后介绍正确的使用方法。
使用JQuery操作cookie时发生取的值不正确的问题:
结果发现cookie有四个不同的属性:
名称,内容,域,路径
$.cookie('the_cookie');//读取cookie
$.cookie('the_cookie','the_value');//存储cookie
$.cookie('the_cookie','the_value',{expires:7});//存储一个带7天期限的cookie
$.cookie('the_cookie','',{expires:-1});//删除cookie
使用:
$.cookie("currentMenuID",menuID);
时未指定域和路径。
所以当域和路径不同时会产生不同的cookie
$.cookie("currentMenuID");
取值时会产生问题。
因此,使用:
$.cookie("currentMenuID","menuID",{path:"/"});
进行覆盖。同域下同一个cookieID对应一个值。
下面我们来看个实例
关于cookie的path设置需要注意,如果不设置path:'/'的话,path则会根据目录自动设置(如:http://www.xxx.com/user/,path会被设置为'/user')
$.extend({
/**
1.设置cookie的值,把name变量的值设为value
example$.cookie('name','value');
2.新建一个cookie包括有效期路径域名等
example$.cookie('name','value',{expires:7,path:'/',domain:'jquery.com',secure:true});
3.新建cookie
example$.cookie('name','value');
4.删除一个cookie
example$.cookie('name',null);
5.取一个cookie(name)值给myvar
varaccount=$.cookie('name');
**/
cookieHelper:function(name,value,options){
if(typeofvalue!='undefined'){//nameandvaluegiven,setcookie
options=options||{};
if(value===null){
value='';
options.expires=-1;
}
varexpires='';
if(options.expires&&(typeofoptions.expires=='number'||options.expires.toUTCString)){
vardate;
if(typeofoptions.expires=='number'){
date=newDate();
date.setTime(date.getTime()+(options.expires*24*60*60*1000));
}else{
date=options.expires;
}
expires=';expires='+date.toUTCString();//useexpiresattribute,max-ageisnotsupportedbyIE
}
varpath=options.path?';path='+options.path:'';
vardomain=options.domain?';domain='+options.domain:'';
varsecure=options.secure?';secure':'';
document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');
}else{//onlynamegiven,getcookie
varcookieValue=null;
if(document.cookie&&document.cookie!=''){
varcookies=document.cookie.split(';');
for(vari=0;i<cookies.length;i++){
varcookie=jQuery.trim(cookies[i]);
//Doesthiscookiestringbeginwiththenamewewant?
if(cookie.substring(0,name.length+1)==(name+'=')){
cookieValue=decodeURIComponent(cookie.substring(name.length+1));
break;
}
}
}
returncookieValue;
}
}
});
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery的cookie操作技巧总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》
希望本文所述对大家jQuery程序设计有所帮助。