document cookie 属性定义
cookie 属性可设置或查询与当前文档相关的所有 cookie。语法如下:
document.cookie [ = name1=value1; expire=GMT_String; path=; domain=;]
设置 cookie
设置 cookie 值
现在要设置两个 cookie:
user_id=2; user_name=admin;
JavaScript 代码如下:
document.cookie = "user_id=2"; document.cookie = "user_name=admin";设置 cookie 过期时间,路径及作用域下面的例子设置过期时间为一天,路径为网站根目录,所有此域名下的 cookie 都共享://获取当前时间 var date=new Date(); date.setTime(date.getTime()+24*3600*1000); document.cookie = "user_id=2;path=/;domain=.5idev.com;expire="+date.toGMTString();设置 cookie 有特殊符号在 cookie 的名或值中不能使用分号(;)、逗号(,)、等号(=)以及空格,当值中需要保留这些符号时,需要用 escape() 函数进行编码,它能将一些特殊符号使用十六进制表示。document.cookie = "test="+escape("JavaScript cookie test");而在取出值以后再使用 unescape() 进行解码从而得到原来的 cookie 值,这种方法还能有效避免中文乱码等。获取 cookie 值通过 document.cookie 可以直接获取当前页面 cookie 的值,得到的是一个字符串。下面的例子读取当前页面的 cookie(如果有的话):<html> <body> <p>与本文档相关的 cookies:</p> <script type="text/javascript"> document.write(document.cookie) </script> </body> </html>运行该例子,输出如下(不同的文档及不同浏览器输出内容可能不同):与本文档相关的 cookies: PHPSESSID=lk40pcgaqnh1s1545oqvbsrlo3; BHvI_2132_widthauto=1; BHvI_2132_ulastactivity=f1812nHW40njUS8xhWoNcehET9hmgMGu2Bxk2N7yrAjczvtwnxNN; BHvI_2132_lastcheckfeed=1%7C1352996907; BHvI_2132_auth=5230MHZEAi0DAOCDQtFhZVCtvcRTHKt%2BwZXXayJd5mjimRBXJHbyKAq2nm570bcBHUK2fJblfSUlmCPPrLn7; BHvI_2132_nofavfid=1; BHvI_f9e0_nofavfid=1; BHvI_f9e0_ulastactivity=65186DADp3j90bfuldtDqrvjeiR08WDS9zEv%2FllVdK%2FF1zUWF7bt很遗憾 JavaScript 不支持直接通过 name 来获取对应的 cookie 值,需要通过处理得到的 cookies 字符串来实现:var str_cookie = document.cookie; var arr_cookie = str_cookie.split("; "); var php_session; //遍历 arr_cookie 数组 for(var i=0;i<arr_cookie.length;i++){ var arr = arr_cookie[i].split("="); //找到名称为userId的cookie if("PHPSESSID"==arr[0]){ php_session=arr[1]; break; } } document.write(php_session);更新 cookie 值将需要更新的 cookie name 重新设定值即可,如果有过期时间,作用域等也需要一并设定。删除 cookie 值要删除一个cookie,将其过期时间设定为一个过去的时间即可:var date=new Date(); date.setTime(date.getTime()-1000); document.cookie = "user_id=2;expire="+date.toGMTString();
本章节内容共分 13 部分:
- JavaScript Document 对象
- JavaScript document 对象集合
- JavaScript document cookie 属性:设置或查询与当前文档相关的 cookie
- JavaScript document domain 属性:得到当前文档的域名
- JavaScript document lastModified 属性:得到文档最后被修改的日期和时间
- JavaScript document referrer 属性:得到上一页的 URL 地址
- JavaScript document title 属性:得到当前文档的标题
- JavaScript document URL 属性:得到当前文档的 URL
- JavaScript document getElementById() 方法:根据给定的 id 查找文档元素
- JavaScript document getElementByName() 方法:根据给定的 name 属性值查找文档元素
- JavaScript document getElementByTagName() 方法:根据给定的元素标签 name 查找文档元素
- JavaScript document open() 方法:打开一个新文档
- JavaScript document close() 方法:关闭一个由 open 方法打开文档