JavaScript cookie()的使用

JavaScript cookie

/*设置cookie*/
function setCookie(c_name,c_value,expires){
    var date = new Date();
    date.setTime(date.getTime()+(expires*60*1000));
    document.cookie = c_name + "=" + c_value + ";
    expires=" + date.toGMTString();
}
/*上面这个函数中的参数存有 cookie 的名称、值以及过期天数。首先将天数转换为有效的日期,
然后,将 cookie 名称、值及其过期日期存入 document.cookie 对象*/
function getCookie(c_name){
    var name = c_name +"=";    
    var Cookie = document.cookie.split(‘;‘);    
    for(var i=0; i<Cookie.length; i++){        
    var c = Cookie[i].trim(); //.trim() 函数用于去除字符串两端的空白字符。
    var c = Cookie[i].replace(/(^\s*)|(\s*$)/g, "")//使用正则替换字符串两端的空白字符。
    if (c.indexOf(name)==0) return c.substring(name.length,c.length);
    }    
    return "";
}
 //存cookie
 //setCookie(cookie名,cookie值,过期时间)
 setCookie("userman","123",5) //此处为5分钟(date.getTime()+(expires*60*1000))
 //获取cookie 
 var userman = getCookie("userman");
 $(class).val(userman)

cookie 的名或值中不能使用分号(;)、逗号(,)、等号(=)、空格,以及中文(会出现错误或乱码问题)。 如果必须使用上述的特殊字符,则需要用escape()函数进行编码(以16进制数的形式转码)存储;如果想要读取含特殊字符和中文的cookie值,在取出值后需要使用unescape()进行解码才能得到原来的cookie值 ;

cookie()的使用

首先包含jQuery的库文件,在后面包含 jquery.cookie.js 的库文件。

<script type="text/javascript" src="jquery.min.js"></script> 
<script type="text/javascript" src="jquery.cookie.js"></script> 
或者
<script type="text/javascript" src="zepto.js"></script> 
<script type="text/javascript" src="zepto.cookie.js"></script>

jquery.cookie.js的使用

 var time = "username"   //cookie的名称
 var date = new Date();  //获取当前时间
 date.setTime(date.getTime() + 300000); //系统当前时间+5分钟    
 $("cookie").val($.fn.cookie(time));//将name = username的cookie值赋给id=cookie的标签
 var detailTime = $("input").text();//获取input的值
 var admin = $("#takerTime").val(detailTime) //获取到的之赋给id=takerTime的input
 $.cookie(time,admin,{path:"/", expires:date})

zepto.cookie.js的使用

 var time = "username"   //cookie的名称
 var date = new Date();  //获取系统时间
 date.setTime(date.getTime() + 300000); //系统当前时间+5分钟    
 $("cookie").val($.fn.cookie(time));//将name = username的cookie值赋给id=cookie的标签
 var detailTime = $("input").text();//获取input的值
 var admin = $("#takerTime").val(detailTime) //获取到的之赋给id=takerTime的input
 $.fn.cookie(time,admin,{path:"/",expires:date})

参数说明

  1. 语法:$.cookie(cookie名,cookie值 , {路径,cookie有效时间 })
  2. $.cookie(time); 读取保存在cookie中名为的time的值。
  3. $.cookie(time,admin); 将值admin写入cookie名为time的cookie中。
  4. {path:”/”,expires:date} date=〉cookie保存的时间;date时间为5分钟; 设置小时用setHours()和getHours方法 :date.setHours(date.getHours() + 1);或者用毫秒的乘法
  • path: cookie值保存的路径,默认只有设置cookie的网页才能读取该cookie;path:”/”:表示根目录。
  • expires:有限日期,值可以是一个数字(从创建cookie时算起,以天为单位)或一个Date 对 象,如果没有设置时间,浏览器关闭之后此cookie就失效了。
时间: 2024-10-11 16:01:17

JavaScript cookie()的使用的相关文章

javascript cookie 操作

1 <html> 2 <head> 3 <meta charset="utf-8"> 4 <title>Javascript cookie</title> 5 <script type="text/javascript"> 6 function getCookie(c_name) 7 { 8 alert(document.cookie); 9 if (document.cookie.length

JavaScript——Cookie

JavaScript中的Cookie基础 页面用来保存信息的,比如登录.记住用户名. [cookie的特性] (1)同一个网站中所有页面共享一套cookie: (2)数量.大小有限: (3)有保质期,过期时间(由JS控制): (4)cookie存在于客户端. [JS中的cookie使用] document.cookie [设置cookie] (1)格式:名字=值: (2)不会覆盖: (3)过期时间:expires=时间(日期对象的使用:oDate=new Date()): 例如: var oDa

[转自脚本之家] Javascript cookie 详解

cookie概述 在上一节,曾经利用一个不变的框架来存储购物栏数据,而商品显示页面是不断变化的,尽管这样能达到一个模拟 全局变量的功能,但并不严谨.例如在导航框架页面内右击,单击快捷菜单中的[刷新]命令,则所有的JavaScript变量都会丢失.因此,要实现严格的 跨页面全局变量,这种方式是不行的, JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求. cookie是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由J

IE下javascript cookie path设置Bug

项目中设置完cookie,在Firefox下顺利测试通过.IE测试出现问题,经定位发现是Javascript设置 Cookie 时的 path 有问题.IE下Cookie设置在 /或者URL所在路径时正常,如果Cookie值作用域在当前URL下,则IE下javascript 无法获取到设置的Cookie值. 看下面演示代码,注意下面的path 区别: var cookie_name = "name"; var cookie_value = "value"; expi

[JavaScript]cookie 详解

什么是cookie? cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScript 来创建和取回 cookie 的值. cookie操作 1 var cookies = { 2 //读取cookie:字符串截取方法 3 getCookieByStr:function (c_name){ 4 if (document.cookie.length>0){ 5 c_start=document.cookie.ind

PHP javascript cookie

2015-07-30 16:54:58 ................................cao!!!! 汉字, 邮箱的@符号 容易出错 PHP setcookie 的时候, 不要urlencode(); javascript 读取cookie值的时候, 用decodeURIComponent();函数

[JavaScript]cookie实现刷新不变化树形菜单

通过设置cookie来保存树形菜单的状态,在页面加载时重新读取cookie来设置菜单. 菜单的HTML结构: 1 <div class="treemenu"> 2 <ul> 3 <li> 4 <a href="#" id="treemenu_a_1">一级菜单一</a> 5 <div class="submenu" id="submenu_1"

javascript—cookie操作

document.cookie = 'user=lj';//添加 var oDate = new Date(); oDate.setDate(oDate.getDate() + 7); document.cookie = 'pwd=123;expires=' + oDate;//设置cookie有效期 //添加cookie function setCookie(name,value,days) { var oDate = new Date(); oDate.setDate(oDate.getDa

javascript Cookie

cookie是以键值对的形式保存的,即key=value的格式.各个cookie之间一般是以“;”分隔. JS设置cookie: 假设在A页面中要保存变量username的值("jack")到cookie中,key值为name,则相应的JS代码为: document.cookie="name="+username; JS读取cookie: 假设cookie中存储的内容为:name=jack;password=123 则在B页面中获取变量username的值的JS代码