|
|
|
JavaScript写的cookie类 |
热 ★★★★ |
|
JavaScript写的cookie类 |
|
作者:闵涛 文章来源:闵涛的学习笔记 点击数:1473 更新时间:2009/4/23 11:26:59 |
|
<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的有效时间!"); &[1] [2] 下一页 [Delphi程序]开发Web应用程序中Cookie使用的问题 [VB.NET程序]dvbbs 7.1.0 cookie 存在泄露绝对路径漏洞 [Web开发]javascript读写cookie的一个小demo [Web开发]初学Javascript之cookie篇(译) [Web开发]Asp.net中Cookie简明参考 [Web开发]ASP.NET状态存储管理九大兵器之五(Cookie) [Web开发]用ASP.NET加密Cookie数据 [Web开发]ASP.NET Forms Authentication所生成Cookie的安全… [Web开发][原创]VB.net技巧之七----asp.net中cookie的使用 [Web开发]ASP.NET中Cookie编程的基础知识(5)
|
|
教程录入:mintao 责任编辑:mintao |
|
|
上一篇教程: vbscript和javascript之间的函数的调用 下一篇教程: n(n2)幅图片轮换擦洗显示 |
|
|
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网] |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
|
|
|
|
|
|
|
同类栏目 |
|
|
赞助链接 |
|
|
500 - 内部服务器错误。
|
|
|
|
|
|