浏览器的cookie一般拥有以下四个可自定义的属性:
1. expires
过期时间, 即cookie的死亡时间.
如果一个cookie没有expires, 浏览器关闭后此cookie便会消失.
cookie可以一直存活到expires时间, 过期后便会自动失效并消失.
2. path
3. domain
4. secure
代码如下 | 复制代码 |
$.cookie('the_cookie'); //读取Cookie值 $.cookie(’the_cookie’, ‘the_value’); //设置cookie的值 $.cookie(’the_cookie’, ‘the_value’, {expires: 7, path: ‘/’, domain: ‘jquery.com’, secure: true});//新建一个cookie 包括有 |
效期 路径 域名等
代码如下 | 复制代码 |
$.cookie(’the_cookie’, ‘the_value’); //新建cookie $.cookie(’the_cookie’, null); //删除一个cookie |
我们把它写成一个方法里面
代码如下 | 复制代码 |
var Cookie = { Set: function() { var name = arguments[0], value = escape(arguments[1]), days = (arguments.length > 2) ? arguments[2] : 365, path = (arguments.length > 3) ? arguments[3] : "/"; with(new Date()) { setDate(getDate() + days); days = toUTCString(); } document.cookie = "{0}={1};expires={2};path={3}".format(name, value, days, path); }, Get: function() { var returnValue = document.cookie.match(new RegExp("[b^;]?" + arguments[0] + "=([^;]*)(?=;|b|$)", "i")); return returnValue ? unescape(returnValue[1]) : returnValue; }, Delete: function() { var name = arguments[0], value = escape(""), days = (arguments.length > 2) ? arguments[2] : 365, path = (arguments.length > 3) ? arguments[3] : "/"; with(new Date()) { setDate(getDate() + days); days = toUTCString(); } document.cookie = "{0}={1};expires={2};path={3}".format(name, value, days, path); } } |
expires:365
定义cookie的有效时间,值可以是一个数字(从创建cookie时算起,以天为单位)或一个date对象。如果省略,那么创建的cookie是会话cookie,将在用户退出游览器时被删除。
path:'/'
默认情况:只有设置了cookie的网页才能读取改cookie。
定义cookie的有效路径。默认情况下改参数的值为创建cookie的网页所在路径(标准游览器的行为)。如果想在整个网站中访问这个cookie需要这样设置有效路径:path:'/'。如果你想删除一个定义了有效路径的cookie,你需要在调用函数时包含这个路径:$.cookie('r9it',null,{path:'/'});。
domain:'example.com'
默认值:创建cookie的网页所拥有的域名。
secure:true
默认值:false。如果为true,cookie的传输需要使用安全协议(HTTPS)。
raw:true
默认值:false。
默认情况下,读取和写入cookie的时候自动进行编码和解码(使用encodeURIcomponent编码,decodeURIcomponent解码)。要关闭这个功能设置 raw:true 即可。
时间: 2024-09-23 03:34:55