js Cookie 的操作

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>无标题页</title>

<script type="text/javascript"> 
//获得coolie 的值
function cookie(name){    
   var cookieArray=document.cookie.split("; "); //得到分割的cookie名值对    

   var cookie=new Object();    

   for (var i=0;i<cookieArray.length;i++){    

      var arr=cookieArray[i].split("=");       //将名和值分开    

      if(arr[0]==name)return unescape(arr[1]); //如果是指定的cookie,则返回它的值    

   } 
   return ""; 

 
function delCookie(name)//删除cookie
{
   document.cookie = name+"=;expires="+(new Date(0)).toGMTString();
}


function getCookie(objName){//获取指定名称的cookie的值
    var arrStr = document.cookie.split("; ");

    for(var i = 0;i < arrStr.length;i ++){

        var temp = arrStr[i].split("=");

        if(temp[0] == objName) return unescape(temp[1]);
   } 
}
 

function addCookie(objName,objValue,objHours){      //添加cookie
    var str = objName + "=" + escape(objValue);

    if(objHours > 0){                               //为时不设定过期时间,浏览器关闭时cookie自动消失

        var date = new Date();

        var ms = objHours*3600*1000;

        date.setTime(date.getTime() + ms);

        str += "; expires=" + date.toGMTString();
   }
   document.cookie = str;
}


function SetCookie(name,value)//两个参数,一个是cookie的名子,一个是值
{
    var Days = 30; //此 cookie 将被保存 30 天

    var exp = new Date();    //new Date("December 31, 9998");

    exp.setTime(exp.getTime() + Days*24*60*60*1000);

    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}


function getCookie(name)//取cookies函数        
{
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));

     if(arr != null) return unescape(arr[2]); return null;
}


function delCookie(name)//删除cookie
{
    var exp = new Date();

    exp.setTime(exp.getTime() - 1);

    var cval=getCookie(name);

    if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
</script>
</head>
<body>

 

Google Chrome只支持在线网站的cookie的读写操作,对本地html的cookie操作是禁止的。所以下面的代码如果你写在一个本地的html文件中,将弹出的对话框内容为空。<br /><br />
 
document.cookie = "Test=cooo";<br />
 alert(document.cookie);<br />
 

如果这个页面是在线网站的内容,则会正常显示cookie内容Test=cooo等等。<br />


<script type="text/javascript">
if(getCookie('username') == null)
{
    alert("您好");
    addCookie('username,'admin',24);//种Cookie
}
else
{
    alert(getCookie('username'));//输出Cookie值
}
</script>

 

</body>
</html>

posted @ 2015-10-09 20:54  z542601362  阅读(127)  评论(0)    收藏  举报