代码如下 复制代码

<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

更多详细内容请查看:http://www.111cn.net/wy/js-ajax/50863.htm

js cookie使用方法详解的更多相关文章

  1. Js apply call方法详解

    Js apply方法详解 我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这 ...

  2. JS进阶篇--JS数组reduce()方法详解及高级技巧

    基本概念 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值. reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被 ...

  3. Js apply call方法详解【转】

    我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这里我做如下笔记,希望和大家 ...

  4. JS数组reduce()方法详解及高级技巧

    1.语法 arr.reduce(callback,[initialValue]) reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上 ...

  5. js调试工具console方法详解

    一.显示信息的方法 最常用的console.log(),一般用来调试. console.log('hello'); console.info('信息'); console.error('错误'); c ...

  6. js数组sort方法详解

    在处理数组的时候,我们有时候需要对数组进行排序,排序的方法有很多种,但是最好最快的就是利用sort方法进行快速的排序. 我们来看一个例子: var arr1 = [6, 3, 4, 1, 2, 5, ...

  7. JS reduce()方法详解,使用reduce数组去重

     壹 ❀ 引 稍微有了解JavaScript数组API的同学,对于reduce方法至少有过一面之缘,也许是for与forEach太强大,或者filter,find很实用,在实际开发中我至始至终没使用过 ...

  8. [荐]Js apply()和call()方法详解 - http://www.w3cfuns.com/article-5596443-1-1.html

    本帖最后由 默默DE人生 于 2013-3-19 13:22 编辑 Js apply方法详解我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文 ...

  9. Js apply 方法 详解

    Js apply方法详解 我在一开始看到JavaScript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这 ...

随机推荐

  1. java获取照片相关属性

    package test; import java.io.File; import java.util.Iterator; import com.drew.imaging.jpeg.JpegMetad ...

  2. 【转】部署web项目到weblogic上启动错误

    启动weblogic报错:java.lang.ClassCastException: com.sun.faces.application.WebappLifecycleListener cannot ...

  3. 【转】python中的lambda函数

    http://www.cnblogs.com/coderzh/archive/2010/04/30/python-cookbook-lambda.html lambda函数也叫匿名函数,即,函数没有具 ...

  4. Keil C51基本数据类型

  5. WCF与WebService之间的异同

    下面我们来详细讨论一下二者的区别.Web Service和WCF的到底有什么区别. 1,Web Service:严格来说是行业标准,也就是Web Service 规范,也称作WS-*规范,既不是框架, ...

  6. Codeforces Round #Pi (Div. 2) E. President and Roads tarjan+最短路

    E. President and RoadsTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/567 ...

  7. PACPerformance

    https://github.com/kickfjq/android_packages_apps_PACPerformance

  8. 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)--转

    出处:http://blog.csdn.net/xxd851116/archive/2009/06/25/4296866.aspx [前面的话] 在网上经常看到有人对request.getSessio ...

  9. org.apache.hadoop.fs-BufferedFSInputStream

    封装了FSInputStream package org.apache.hadoop.fs; import java.io.BufferedInputStream; import java.io.IO ...

  10. nodejs的mysql模块学习(三)数据库连接配置选项详解

    连接选项 当在创建数据连接的时候 第一种大多数人用的方法 let mysql = require('mysql'); let connection = mysql.createConnection({ ...