一个简单js读写cookies的函数
作者:hayden 日期:2007-12-24
工作中写js的量大了,经常要用到COOKIES读写的功能,然后去百度一下,这次要改革了,记在博客上,也方便日后使用了~
在网上也查到了一个关于js操作COOKIES的类,不过使用起来虽方便,只是代码太长,也增加了很多不常用到的功能,在一些小地方使用那个类也有些“杀牛用鸡刀”了
下面这段代码就方便多了,只有三段,而经常在使用中,可能那个delCookie函数都不需要用~
如果需要设定自定义过期时间
那么把上面的setCookie 函数换成下面两个函数就ok;
在网上也查到了一个关于js操作COOKIES的类,不过使用起来虽方便,只是代码太长,也增加了很多不常用到的功能,在一些小地方使用那个类也有些“杀牛用鸡刀”了
下面这段代码就方便多了,只有三段,而经常在使用中,可能那个delCookie函数都不需要用~
复制内容到剪贴板
程序代码
程序代码//写COOKIES
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
//读取COOKIES
function getCookie(name)
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)) return unescape(arr[2]);
else return null;
}
//删除COOKIES
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
//使用示例
setCookie("name","hayden");
alert(getCookie("name"));
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
//读取COOKIES
function getCookie(name)
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)) return unescape(arr[2]);
else return null;
}
//删除COOKIES
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
//使用示例
setCookie("name","hayden");
alert(getCookie("name"));
如果需要设定自定义过期时间
那么把上面的setCookie 函数换成下面两个函数就ok;
复制内容到剪贴板
程序代码
程序代码function setCookie(name,value,time){
var strsec = getsec(time);
var exp = new Date();
exp.setTime(exp.getTime() + strsec*1);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getsec(str){
alert(str);
var str1=str.substring(1,str.length)*1;
var str2=str.substring(0,1);
if (str2=="s"){
return str1*1000;
}else if (str2=="h"){
return str1*60*60*1000;
}else if (str2=="d"){
return str1*24*60*60*1000;
}
}
//这是有设定过期时间的使用示例:
//s20是代表20秒
//h是指小时,如12小时则是:h12
//d是天数,30天则:d30
//暂时只写了这三种,不知道谁有更好的方法,呵呵
setCookie("name","hayden","s20");
var strsec = getsec(time);
var exp = new Date();
exp.setTime(exp.getTime() + strsec*1);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getsec(str){
alert(str);
var str1=str.substring(1,str.length)*1;
var str2=str.substring(0,1);
if (str2=="s"){
return str1*1000;
}else if (str2=="h"){
return str1*60*60*1000;
}else if (str2=="d"){
return str1*24*60*60*1000;
}
}
//这是有设定过期时间的使用示例:
//s20是代表20秒
//h是指小时,如12小时则是:h12
//d是天数,30天则:d30
//暂时只写了这三种,不知道谁有更好的方法,呵呵
setCookie("name","hayden","s20");
博主向您推荐的其它文章
- 相关日志
- Javascript下的urlencode编码解码方法decodeURIComponent()[17]
- PJBLOG侧边栏选项卡样式代码[517]
- 网站音乐播放器之JS防刷新类(防刷新音乐播放)[868]
- document.getElementsByTagName的烦恼[1061]
- js混淆压缩工具推荐:JSObfuscator By Unest[704]
- 终止浏览器对页面HTML代码的解析操作(兼容代码记录)[231]
- js弹窗(showModalDialog)关闭返回传递参数及激活事件[1470]
- 盗用与整理:discuz论坛下拉菜单(showmenu)效果[557]
- 收藏一个滑动打开隐藏层效果类(Slider)[483]
- 一个不错的时间日期控件My97DatePicker[799]
评论: 2 | 引用: 0 | 查看次数: -
- 日志信息
发表评论


文章来自:
Tags: 


,前几天在你的帮助下搞定了