
function cookie(name, value, expires, path, domain, secure) { |
// 初始化 |
this.name = name; |
this.value = value; |
this.expires = expires; |
this.path = path; |
this.domain = domain; |
this.secure = secure; |
|
// 读取cookie |
this.read = function () { |
// 快捷操作 |
var ck = document.cookie; |
|
var arg = this.name + "="; |
var alen = arg.length; |
var clen = ck.length; |
var i = 0; |
while (i < clen) { |
var j = i + alen; |
if (ck.substring(i, j) == arg) { |
var endstr = ck.indexOf(";", j); |
if (endstr == -1) |
endstr = ck.length; |
return unescape(ck.substring(j, endstr)); |
} |
i = ck.indexOf(" ", i) + 1; |
if (i == 0) |
break; |
} |
return null; |
} |
|
// 设置cookie |
this.set = function () { |
// 更新cookie过期时间 |
expStore = this.expires; |
|
exp = new Date(); |
base = new Date(0); |
skew = base.getTime(); |
if (skew > 0) |
exp.setTime(exp.getTime() - skew); |
exp.setTime(exp.getTime() + (this.expires * 24 * 60 * 60 * 1000)); |
this.expires = exp; |
|
document.cookie = this.name + "=" + escape(this.value) + |
((this.expires) ? "; expires=" + this.expires.toGMTString() : "") + |
((this.path) ? "; path=" + this.path : "") + |
((this.domain) ? "; domain=" + this.domain : "") + |
((this.secure) ? "; secure" : ""); |
|
// 刷新cookie类中的cookie过期时间 |
this.expires = expStore; |
} |
|
// 删除cookie |
this.kill = function () { |
document.cookie = this.name + "=" + |
((this.path) ? "; path=" + this.path : "") + |
((this.domain) ? "; domain=" + this.domain : "") + |
"; expires=Thu, 01-Jan-70 00:00:01 GMT"; |
} |
|
// 更改cookie类中的cookie属性 |
this.changeName = function (chName) { |
this.kill(); |
this.name = chName; |
this.set(); |
} |
this.changeVal = function (chVal) { |
this.kill(); |
this.value = chVal; |
this.set(); |
} |
this.changeExp = function (chExp) { |
this.kill(); |
this.expires = chExp; |
this.set(); |
} |
this.changePath = function (chPath) { |
this.kill(); |
this.path = chPath; |
this.set(); |
} |
this.changeDomain = function (chDom) { |
this.kill(); |
this.domain = chDom; |
this.set(); |
} |
this.changeSecurity = function (chSec) { |
this.kill(); |
this.secure = chSec; |
this.set(); |
} |
} |



