本文实例讲述了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 var account= $.COOKIE('name'); **/ COOKIEHelper: 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
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery的COOKIE操作技巧总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》
希望本文所述对大家jQuery程序设计有所帮助。