js操作cookies类Word文件下载.docx

上传人:b****5 文档编号:21771764 上传时间:2023-02-01 格式:DOCX 页数:9 大小:16.93KB
下载 相关 举报
js操作cookies类Word文件下载.docx_第1页
第1页 / 共9页
js操作cookies类Word文件下载.docx_第2页
第2页 / 共9页
js操作cookies类Word文件下载.docx_第3页
第3页 / 共9页
js操作cookies类Word文件下载.docx_第4页
第4页 / 共9页
js操作cookies类Word文件下载.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

js操作cookies类Word文件下载.docx

《js操作cookies类Word文件下载.docx》由会员分享,可在线阅读,更多相关《js操作cookies类Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。

js操作cookies类Word文件下载.docx

"

)!

=-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];

returntrue;

returnfalse;

this.Save=function(){

var_str,_ars,_mars,_marslength,timeout,i,key;

for(keyinthis._Cookie){

if(!

this._Cookie[key])return;

_str=[];

_mars=CookieClass._Cookie[key];

_marslength=_mars.length;

for(i=0;

_marslength;

i++)_str[_str.length]=escape(_mars[i]);

document.cookie=key+"

+_mars["

]+(_str.length>

0?

:

)+_str+"

expires="

+newDate(parseInt(_mars["

])).toGMTString();

this.GetCookieCount=function(){

var_length=0,key;

for(keyinthis._Cookie)_length++;

return_length;

this.Create=function(name,days){

this._Cookie[name]=[];

this._Cookie[name]["

]=newDate().getTime()+days*86400000;

this.Modify=function(name,days){

this.Create(name,days);

this.GetTime=function(name){

returnnewDate(parseInt(this._Cookie[name]["

]));

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){

this._Cookie[name].splice(index,1);

this.GetCount=function(name){

returnthis._Cookie[name].length;

this.GetItem=function(name,index){

returnthis._Cookie[name][index];

/script>

/*

====================================

Design:

Flashsoft

浏览器能够通过Cookies保留有关数据。

象Windows的注册表一样,用户不必知道Cookies的具体位置,浏览器能找到这些数据。

第六代的浏览器,不管是IE还是NS都支持document.cookie属性。

通过这个属性来读取或修改Cookies的值。

不过Cookies的存储形式是非结构化的长字符串,需要经过相应的解析后才有意义。

Cookies的表达如下,除了name=value以外,其它均为可选:

name=value;

expires=date;

domain=domainname

path=pathname;

secure;

例如:

User=HockeyDude;

expires=Thu,01-Jan-7000:

00:

01GMT;

domain=;

path=/images;

Pass=Gretzky;

expires=Thu,01-Jan-7000:

secure;

这么长的两个字符串只代表了两个Cookies。

如果还要再加上电子信箱或其他信息就还得加长字符串。

通常都是通过分解这样的字符串来取得各个变量或元素的。

这实在是费时费力的事。

使用面向对象设计(ObjectOrientedDesign,OOD)的思路来编写Cookies处理函数,其特点如下:

便于增删子项。

这是很重要的,有些浏览器限制Cookies的使用数量。

通过修改函数可以容易地修改时效数据。

通常的做法很麻烦,要拷贝Cookies,删除原Cookies,修改并重写Cookies。

Cookies和它的子项存放在数组里。

可以根据需要快速而有效地进行修改。

这样也无须解析那长长的字符串。

Cookies对象的使用

以下是对象的公有方法:

方括号[]内是可选参数

//构造

Cookie([定界符,缺省为句点])-构造函数

//初始化

GetCookieCount()-返回Cookies数量

Create(name,days)-创建Cookies及其时效天数

Modify(name,days)-修改Cookies的时效天数

Delete(name)-删除Cookies及其子项

GetTime(name)-返回指定Cookies的过期时间

GetCount(name)-返回Cookies的子项数量

AddItem(name,value)-增加一个子项

GetItem(name,index)-返回指定索引的子项

DelItem(name,index)-删除指定的子项

//存取

Load()-读取Cookies

Save()-存储Cookies

下面是应用实例:

*/

varCookieClass=newCookie();

if(!

CookieClass.Load()){

CookieClass.Create("

Pass"

1);

User"

CookieClass.AddItem("

Ps1"

Ps2"

Ps3"

Ps4"

Ps5"

Ps6"

CookieClass.DelItem("

CookieClass.Save();

alert("

Cookie过期时间:

+CookieClass.GetTime("

).toLocaleString());

alert(document.cookie);

方法二:

scriptlanguage="

Javascript"

functioneyunCookie(){

this.key="

//初始化key。

this.value="

//初始化key'

svalue。

this.expires=0;

//初始化cookie的有效时间,单位毫秒。

this.init=function(){//对象初始化

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;

||typeof(this.key)!

string"

){

alert("

请先设置欲保存的cookie名称!

this.init();

if(this.key.match(/[,;

]/)){

cookie名称中不能包含“,”、“;

”或空格!

if(this.value.toString().match(/[,;

]/)||typeof(this.value)=="

undefined"

cookie值中不能包含“,”、“;

=0||typeof(this.expires)!

number"

请先正确设置cookie的有效时间!

varcookie=document.cookie;

if(cookie.indexOf(this.key+"

confirm("

欲保存的cookie名称已经存在,是否要进行替换?

)){

vardt=newDate();

dt.setTime(dt.getTime()+this.expires);

document.cookie=this.key+"

+this.value+"

+dt.toGMTString();

this.get=function(key){//取得名为key的cookie的值

if(key=="

||key.match(/[,;

请正确设置欲查找的cookie名称!

varstart=cookie.indexOf(key+"

if(start==-1){

欲查找的cookie不存在!

varend=cookie.indexOf("

start);

if(end==-1)end=cookie.length;

vargetCookie=cookie.substring(start+key.length+1,end);

cookie:

+key+"

的值为"

+getCookie);

returngetCookie;

this.showAll=function(){//显示所有cookie

共有以下cookie对:

\n"

+document.cookie.split("

).toString().replace(/,/g,"

));

this.del=function(key){//删除名为key的cookie

请正确设置欲删除的cookie名称!

dt.setTime(dt.getTime());

=eyunDelete;

this.destroy=function(){//销毁所有cookie

while(document.cookie!

document.cookie=document.cookie+"

}

varcookieTest=neweyunCookie()

functionsettest(){

cookieTest.key="

test"

cookieTest.value="

ok"

cookieTest.expires=31536000000

cookieTest.set()

inputtype=buttononclick=cookieTest.showAll()value=read>

inputtype=buttononclick="

cookieTest.set('

a'

'

test'

31536000000)"

value=setA>

settest();

value=setTest>

cookieTest.destroy()"

value=clear>

inputtype=buttononclick=cookieTest.get("

)value=gettest>

a"

)value=geta>

inputtype=buttononclick=cookieTest.set("

1,31536000000)value=resetTest>

inputtype=buttononclick=cookieTest.del("

)value=delTest>

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1