| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 833 人关注过本帖
标题:[原创]做好的cookie函数库和我的问题
只看楼主 加入收藏
vicki1986
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2005-11-29
收藏
 问题点数:0 回复次数:3 
[原创]做好的cookie函数库和我的问题


// JavaScript Document
//构造过期日期。其功能是得到从现在开始,后推指定时间后GMT格式的日期。
//参数days制定后推的天数;hours指定后推的小时数;minutes指定后推的分钟数
//比如希望某个cookie的过期日期为三天两小时二十一分,那么传递参数给该函数的参数值依次为3、2、21
//这三个参数都是必须参数,可以为他们传递值0
function getExpDate(days,hours,minutes){
var expDate=new Date();
if(typeof days=="number" && typeof hours=="number" && typeof minutes=="number"){
expDate.setDate(expDate.getDate()+parseInt(days));
expDate.setHours(expDate.getHours()+parseInt(hours));
expDate.setMinutes(expDate.getMinutes()+parseInt(minutes));
return expDate.toGMTString();
}
}

//得到需要的Cookie值对儿,该函数由getCookie()调用
function getCookieVal(offset){
var endstr=document.cookie.indexOf(";",offset);
if(endstr==-1){
endstr=document.cookie=length;
}
return unescape(document.cookie.substring(offset,endstr));
}

//根据Cookie名称得到Cookie值(需要调用getCookieVal()函数才能实现功能)
function getCookie(name){
var arg=name+"=";
var alen=arg.length;
var clen=document.cookie.length;
var i=0;
while(i<clen){
var j=i+alen;
if(document.cookie.substring(i,j)==arg){
return getCookieVal(j);
}
i=document.cookie.indexOf("",i)+1;
if(i==0) break;
}
return "";
}

//创建或修改Cookie
function setCookie(name,value){
var argv=setCookie.arguement;
var argc=setCookie.arguement.length;
var expires=(2<argc)?argv[2]:null;
var path=(3<argc)?argv[3]:null;
var domain(4<argc)?argv[4]:null;
var secure(5<argc)?argv[5]:false;
document.cookie=name+"="+escape(value)+((expires)?";expires="+expires:"")+
((path)?";path="+path:"")+
((domain)?";domain="+domain:"")+
((secure)?";secure":"");
}

//删除Cookie
function deleteCookie(name,path,domain){
if(getCookie(name)){
document.cookie=name+"="+
((path)?";path="+path:"")+
((domain)?";domain="+domain:"")+
";expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}

//根据Cookie名称得到Cookie的值
function getCookieValue(name){
var c=document.cookie;
var begin=c.indexOf(name);
if(begin<0) return "";
begin+=name.length+1;//将begin的位置放在=之后
var end=c.indexOf(";",begin);
if(end=-1) end=c.length;
return(c.slice(begin,end));
}
这个是cookieOP.js文件,希望对大家有用~谢谢支持~可能会有错误~欢迎指正!
下面是一段程序~也是我想问的问题~为什么我的这段程序运行后visit变成nan~各位帮忙看看有什么问题~在下感激不尽阿~特别是老大要帮帮忙啊!

<html>
<head>
<title>无标题文档</title>
<script type="text/javascript" src="../../green/cookieOP.js"></script>
<script language="javascript">
function display(){
var expdate=new Date();
var visit;
var visits;
expdate=getExpDate(365,1,1);
if(!(visits=getCookie("visits")))
visit=0;
visit++;
setCookie("visits",visit,expdate,"/",null,false);
document.write("您是第"+visit+"次访问本站!");
}
display();
</script>
</head>

<body>
</body>
</html>

搜索更多相关主题的帖子: cookie 函数库 
2006-01-25 17:35
linuxpluto
Rank: 4
等 级:贵宾
威 望:13
帖 子:889
专家分:23
注 册:2005-8-14
收藏
得分:0 
cookieOP.js
1。没有一个函数是判断一个cookie是不是存在的
2。getCookie("visits")这是关键错误,没这个cookie
3。还有就是visit没有赋值,原因是上面那个错误,导致visit不能初始化
4。document.write("您是第"+visit+"次访问本站!");红字应该是从cookie读出来的,如果能正常运行,也可以,但失去了使用cookie的意义了
5。没的一个全局变量,或者没一个真正初始化visit的变量,应该在一个类中定义这个变量
导致每次访问这个站的时候visit就边成了0

吃的比猪还差,干的比驴还累,起的比鸡还早,睡得比小姐还晚,挣得比民工还少,看起来比谁都好——苦命的人.人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己
2006-01-26 09:16
vicki1986
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2005-11-29
收藏
得分:0 
哦~谢谢啦~我继续改~
2006-01-26 12:36
vicki1986
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2005-11-29
收藏
得分:0 
明白了~谢谢老大~
2006-01-26 12:44
快速回复:[原创]做好的cookie函数库和我的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014512 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved