西安做网站_西安网站建设公司_西安网页制作_西安网页设计_西安网站制作设计公司

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 8422|回复: 2

javascript操作cookie函数写法

[复制链接]
发表于 2012-10-31 09:47:21 | 显示全部楼层 |阅读模式
整理了两种简单的 javascript操作cookie写法,均有三个功能:设置cookie、查询cookie、删除cookie。第一种简单易懂,第二种封装使用方便。原生 js设置cookie
简单版:
function setCookie(name, value, iDay) {
var oDate = new Date();
oDate.setDate(oDate.getDate() + iDay);
document.cookie = name+'='+value+';expires='+oDate;
}
function getCookie(name) {
var arr = document.cookie.split('; ');
var i = 0;
for(i=0; i<arr.length; i++) {
var arr2 = arr .split('=');
if(arr2[0] == name) {return arr2[1];}
}
return '';
}
function removeCookie(name) {
setCookie(name,'',-1);
}
封装版:
var cookie=new function(){
this.set=function(name,value,hours){
var life=new Date().getTime();
life+=hours*1000*60;
var cookieStr=name+"="+escape(value)+";expires="+new Date(life).toGMTString();
document.cookie=cookieStr;
};
this.get=function(name){
var cookies = document.cookie.split(";");
if(cookies.length>0){
var cookie=cookies[0].split("=");
if(cookie[0]==name) {return unescape(cookie[1]);}
}
return null;
};
this.remove=function(name){
var cookieStr=name+"="+escape('null')+";expires="+new Date().toGMTString();
document.cookie=cookieStr;
};
}
西安网站建设 | 西安做网站 —— 剑锋所指 所向披靡!
回复

使用道具 举报

 楼主| 发表于 2012-10-31 14:07:54 | 显示全部楼层
  1. function CheckAll(form){
  2.                 for (var i=0;i < form.elements.length;i++){
  3.                         var e = form.elements[i];
  4.                         e.checked = true;
  5.                 }
  6. }
  7. function CheckOthers(form){
  8.                 for (var i=0;i < form.elements.length;i++){
  9.                         var e = form.elements[i];
  10.                         e.checked=!e.checked;
  11.                  }
  12. }
  13. function checkrandom(form){
  14.         var num=form.elements.length;
  15.         for (var i=0;i < num;i++){
  16.                 var e = form.elements[i];
  17.                 e.checked = false;
  18.         }
  19.         for(j=0;j<num/2;j++){
  20.                 var roundNum=Math.floor(Math.random()*num);
  21.                 var e=form.elements[roundNum];
  22.                 if(e.type=="checkbox") {
  23.                         e.checked=true;
  24.                 }
  25.         }
  26.         //这个随机是算法是首先刷新所有checkbox值为false;然后生成一个随机数,循环checkbox数组长度?/2?
  27.         //这样可能会造成重复?因此得到的结果一般要少于数组长度长度?/2.
  28. }
  29. function setCookie(name,value){
  30. var exp = new Date();
  31. exp.setTime(exp.getTime() + 24*3600*1000);       
  32. document.cookie = name + "="+ value + ";path=/;expires=" + exp.toGMTString();
  33. }
  34. function getCookie(name){
  35. var arr=document.cookie.split('; ');
  36. for(var i=0 ; i<arr.length; i++)
  37. {
  38.         var arr2=arr[i].split('=');
  39.         if(arr2[0]==name)
  40.         {return arr2[1];}
  41. }
  42. return null;
  43. }
  44. function delCookie(name){
  45. var exp = new Date();
  46. exp.setTime(exp.getTime()-10000);       
  47. document.cookie = name + "=0;path=/;expires=" + exp.toGMTString();
  48. }
  49. function chkPlayer(frm){
  50. var youklUrlArr="";
  51. var isnull=false;
  52. for (var i=0;i<frm.elements.length;i++){
  53.         var youklFrm = frm.elements[i];
  54.         if(youklFrm.checked&&youklFrm.type!="button"){
  55.                 youklUrlArr+=youklFrm.name;
  56.                 isnull=true;
  57.         }
  58. }       
  59. if(!isnull){
  60.         alert("请选上一首!");
  61.         return false;
  62. }
  63. delCookie("airenwcom");
  64. setCookie("airenwcom",youklUrlArr);
  65. location.href="http://airenw.com/music/shanggangequ/";       
  66. return false;
  67. }

复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-31 19:23:06 | 显示全部楼层
  1. /*
  2. name:cookie 名
  3. value:cookie 值
  4. */
  5. //写入cookie
  6. function SetCookie(name,value)
  7. {
  8. var Days = 30; //此 cookie 将被保存 30 天
  9. var exp = new Date();
  10. exp.setTime(exp.getTime() + Days*24*60*60*1000);
  11. document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
  12. }

  13. ///删除cookie
  14. function delCookie(name)
  15. {
  16. var exp = new Date();
  17. exp.setTime(exp.getTime() - 1);
  18. var cval=getCookie(name);
  19. if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
  20. }

  21. //读取cookie
  22. function getCookie(name)
  23. {
  24. var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  25. if(arr != null)
  26. return unescape(arr[2]);
  27. return null;
  28. }
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|西安网站建设

GMT+8, 2024-4-20 15:59 , Processed in 0.045012 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表