手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网页制作>Javascript>列表

JavaScript写的cookie类

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
<script language="JScript">
function Cookie(delim){
this._Cookie=[];
this.Load=function(){
if(document.cookie.indexOf(";")!=-1){
var _sp,_name,_tp,_tars,_tarslength;
var _item=document.cookie.split("; ");
var _itemlength=_item.length;
while(_itemlength>0){
_sp=_item[--_itemlength].split("=");
_name=_sp[0];
_tp=_sp[1].split(",");
_tars=_tp.slice(1,_tp.length);
this._Cookie[_name]=[];
this._Cookie[_name]=_tars;
this._Cookie[_name]["timeout"]=_tp[0];
}
return true;
}
return false;
}
this.Save=function(){
var _str,_ars,_mars,_marslength,timeout,i,key;
for(key in this._Cookie){
if(!this._Cookie[key])return;
_str=[];
_mars=CookieClass._Cookie[key];
_marslength=_mars.length;
for(i=0;i<_marslength;i )_str[_str.length]=escape(_mars[i]);
document.cookie=key "=" _mars["timeout"] (_str.length>0?",":"") _str (_mars["timeout"]==0?"":";expires=" new Date(parseInt(_mars["timeout"])).toGMTString());
}

}
this.GetCookieCount=function(){
var _length=0,key;
for(key in this._Cookie)_length ;
return _length;
}
this.Create=function(name,days){
days=days?days:0;
if(!this._Cookie[name])this._Cookie[name]=[];
this._Cookie[name]["timeout"]=days!=0?new Date().getTime() parseInt(days)*86400000:0;
}
this.Modify=function(name,days){
this.Create(name,days);
}
this.GetTime=function(name){
return new Date(parseInt(this._Cookie[name]["timeout"]));
}
this.Delete=function(name){
this.Create(name,0);
}
this.AddItem=function(name,value){
this._Cookie[name][this._Cookie[name].length]=value;
}
this.DelItem=function(name,index){
var _ttime=this._Cookie[name]["timeout"];
this._Cookie[name]=this._Cookie[name].slice(0,index).concat(this._Cookie[name].slice(parseInt(index) 1,this._Cookie[name].length));
this._Cookie[name]["timeout"]=_ttime;
}
this.GetCount=function(name){
return this._Cookie[name].length;
}
this.GetItem=function(name,index){
return this._Cookie[name][index];
}
}
</script>
<script language="JScript">
var CookieClass=new Cookie();
if(!CookieClass.Load()){
CookieClass.Create("Pass",1);
CookieClass.AddItem("Pass","Ps1");
CookieClass.AddItem("Pass","Ps2");
CookieClass.AddItem("Pass","Ps3");
CookieClass.AddItem("Pass","Ps4");
CookieClass.DelItem("Pass",1);
CookieClass.Save();
}
alert("Cookie过期时间:" CookieClass.GetTime("Pass").toLocaleString());
alert(document.cookie);
</script>
<script>
function eyunCookie()
{this.key="";//初始化key。
this.value="";//初始化key's value。
this.expires=0;//初始化cookie的有效时间,单位毫秒。
this.init=function()//对象初始化
{this.key="";
this.value="";
this.expires=0;
}
this.set=function(key,value,expires)//设置cookie
{if(this.key=="")this.key=key;
if(this.value=="")this.value=value;
if(this.expires<=0)this.expires=expires;
if(this.key==""||typeof(this.key)!="string")
{alert("请先设置欲保存的cookie名称!");
this.init();
return false;
}
if(this.key.match(/[,; ]/))
{alert("cookie名称中不能包含“,”、“;”或空格!");
this.init();
return false;
}
if(this.value.toString().match(/[,; ]/)||typeof(this.value)=="undefined")
{alert("cookie值中不能包含“,”、“;”或空格!");
this.init();
return false;
}
if(this.expires<=0||typeof(this.expires)!="number")
{alert("请先正确设置cookie的有效时间!");
this.init();
return false;
}
var cookie=document.cookie;
if(cookie.indexOf(this.key "=")!=-1)
{if(!confirm("欲保存的cookie名称已经存在,是否要进行替换?"))
{this.init();

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!