js cookie使用方法详解
代码如下 复制代码
<script>
function getCookie(c_name){
if
(document.cookie.length>0){ //先查询cookie是否为空,为空就return
""
c_start=document.cookie.indexOf(c_name +
"=") //通过String对象的indexOf()来
检查这个cookie是否存在,不存在就为 -1
if (c_start!=-1){
c_start=c_start + c_name.length+1 //最后这个+1其实就是表示"="号啦,这样
就获取到了cookie值的开始位置
c_end=document.cookie.indexOf(";",c_start) //其实我刚看见indexOf()第二个
参数的时候猛然有点晕,后来想起来表示指定的开始索引的位置...这句是为了得到值的结束位置。因为
需要考虑是否是最后一项,所以通过";"号是否存在来判断
if (c_end==-1)
c_end=document.cookie.length
return
unescape(document.cookie.substring(c_start,c_end)) //通过
substring()得到了值。想了解unescape()得先知道escape()是做什么的,都是很重要的基础,想了解的
可以搜索下,在文章结尾处也会进行讲解cookie编码细节
}
}
return ""
}
function setCookie(c_name, value, expiredays){
var exdate=new
Date();
exdate.setDate(exdate.getDate() +
expiredays);
document.cookie=c_name+ "=" + escape(value) +
"path=/;domain=111cn.net" +
((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
function
sc(days)
{
setCookie(‘ashow‘,‘a‘,days);
document.getElementById(‘ad‘).style.display=‘none‘;
}
function gc()
{
if(getCookie(‘ashow‘)==1)
{
alert(getCookie(‘ashow‘));
document.getElementById(‘ad‘).style.display=‘none‘;
}
}
</script>
<div
id="ad">fdsafdsafdsafsda</div>
<script>
gc();
</script>
<a
href="#" onclick="javascript:sc(1);">设置Cookie值</a>
<a href="#"
onclick="javascript:gc();">获取Cookie值</a>
<a href="#"
onclick="javascript:sc(-1);">清除Cookie值</a>
自己调用 cookie的总结
path= 这个如果你没有设置那么你的cookie只能适用于当前目录,如
http://www.111cn.net/php/phper.html如果我们在其它页面如http://www.111cn.net/sj/ 这样就获取
不到这个目录cookie值了
设置方法
path=/ 即可。
domain= 这个是设置域名了,如 我们设置的是www.111cn.net域名,没设置我们只能在这个域名,那么
二级域名就是无法读取cookie值了。
设置
domain=111cn.net
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。