用js读、写、删除Cookie代码续篇
2014-12-03 00:00
489 查看
上次的一篇文章:用js读、写、删除Cookie代码分享及详细注释说明,在实践中发现了一些问题:
1.cookie在本地文件上只能在火狐上调试,IE和chrome无效
2.cookie没有设置为永不过期,只考虑了设置一个时间段就过期,显然不太合理。
这次给出的是比较合理的cookie操作代码:
例子演示的是:点击文字展开内容,再次点击隐藏。当内容为隐藏时,下次打开还是隐藏的,当内容为显示时,下次打开还是显示。
1.cookie在本地文件上只能在火狐上调试,IE和chrome无效
2.cookie没有设置为永不过期,只考虑了设置一个时间段就过期,显然不太合理。
这次给出的是比较合理的cookie操作代码:
var Cookie = { get: function (k) { return ((new RegExp(["(?:; )?", k, "=([^;]*);?"].join(""))).test(document.cookie) && RegExp["$1"]) || ""; }, set: function (k, v, e, d) { var date=new Date(); var expiresDays=e; date.setTime(date.getTime()+expiresDays*24*3600*1000); //如果有设置时间,则在规定时间内使用cookie,否则就是永不过期 document.cookie=k+"="+v+"; expires="+ (e != '' ? date.toGMTString(): "GMT_String")+";path=/;domain="+ (d||''); }, del: function (k) { var date=new Date(); //将date设置为过去的时间 date.setTime(date.getTime()-10000); document.cookie=k+"=; expires="+date.toGMTString(); } };
例子演示的是:点击文字展开内容,再次点击隐藏。当内容为隐藏时,下次打开还是隐藏的,当内容为显示时,下次打开还是显示。
<div class="tab"> <h3 class="tab-header">收缩</h3> <div class="tab-con" id="tabCon"> <p>展开之后可见这里的内容</p> </div> </div> var btn = document.getElementsByTagName('h3')[0]; btn.addEventListener('click',function(){ var isClose = this.getAttribute('data-isClose'); if(isClose == 'close'){ show(); Cookie.del('flag'); }else{ hide(); Cookie.set('flag','hide'); } }); var tabCon = document.getElementById('tabCon'); function show(){ tabCon.style.display = 'block'; btn.setAttribute('data-isClose','open'); btn.innerHTML = '收缩'; } function hide(){ tabCon.style.display = 'none'; btn.setAttribute('data-isClose','close'); btn.innerHTML = '展开'; } var flag = Cookie.get('flag'); if(flag == 'hide'){ hide(); }
相关文章推荐
- 用js读、写、删除Cookie代码续篇
- js中cookie的添加、取值、删除示例代码
- 用js读、写、删除Cookie代码分享及详细注释说明
- js删除所有的cookie的代码
- js设置cookie,读取cookie,删除cookie详细代码及示例
- 用js读、写、删除Cookie代码分享及详细注释说明
- js删除所有的cookie的代码
- js中cookie的添加、取值、删除示例代码
- js实现cookie的删除获取与添加
- 用js删除tbody的代码
- 利用js对COOKIE的增加、删除操作
- js读写COOKIE实现记住帐号或密码的代码(js读写COOKIE)
- JS特效代码大全(二)如何记录cookie的顶部自动伸缩广告
- asp.net通过js实现Cookie创建以及清除Cookie数组的代码
- js 设置|获取|删除 cookie|QueryString
- JS调用C#后台代码---JS实现DataGrid“全选”、“反选”、调用后台代码批量删除数据
- js对cookie的写入,读取及删除
- JS 添加删除元素的实现代码
- JS 添加删除元素的实现代码
- 比较全的JS checkbox全选、取消全选、删除功能代码