javascript操作cookie能够沿用上次的设置或在不同的页面间共享数据

javascript操作cookie,问题: 使得在访问页面的时候能够沿用上次的设置,或者在不同的页面间共享数据。

示例一:

//目前b/s程序开发及应用过程中,cookie应用相当频繁
//如:用户登陆 ,保存用户偏好设置 等等
//下面的类为方面操作cookie提供了帮助
//date:2008/4/24 by danxinju

var Cookie = new Object(); //定义Cookie对象
Cookie.setCookie = function(name/*cookie键*/, value/*键值*/, option/*选项:过期设置*/){ //设置cookie
var str = name +'='+ escape(value);
if(option){
if(option.expireHours){
var d=new Date();
d.setTime(d.getTime()+option.expireHours*3600*1000);
str += '; expires='+d.toGMTString();
}
if(option.path) str += '; path='+option.path;
if(option.domain) str += '; domain='+option.domain;
if(option.secure) str += '; true';
}
document.cookie = str;
};
Cookie.getCookie = function(name/*cookie键*/){ //获取一个cookie值
var arr = document.cookie.split('; ');
if(arr.length == 0) return '';
for(var i=0; i

<!--
//学习一下如何利用js来操作cookie

//写入 cookie
//不区分 cookieName 的大小写
//不考虑子键
function WriteCookies(cookieName, cookieValue, expires)
{
if (expires)
{
//指定了 expires
document.cookie =
WriteCookies_GetCookieName(cookieName) + "=" + escape(cookieValue)
+ "; expires=" + xpires.toGMTString();
}
else
{
document.cookie = WriteCookies_GetCookieName(cookieName) + "=" + escape(cookieValue);
}
}

//获取并返回与 cookieName 同名的 cookie 名称,允许大小写不同
//如果不存在这样的 cookie,就返回 cookieName
function WriteCookies_GetCookieName(cookieName)
{
var lowerCookieName = cookieName.toLowerCase();
var cookieStr = document.cookie;

if (cookieStr == "")
{
return cookieName;
}

var cookieArr = cookieStr.split("; ");
var pos = -1;
for (var i=0; i<cookieArr.length; i++)
{
pos = cookieArr.indexOf("=");
if (pos > 0)
{
if (cookieArr.substring(0, pos).toLowerCase() == lowerCookieName)
{
return cookieArr.substring(0, pos);
}
}
}

return cookieName;
}

//获取并返回 cookie 值
//不区分 cookieName 的大小写
//dfltValue 为默认返回值
//不考虑子键
function ReadCookies(cookieName, dfltValue)
{
var lowerCookieName = cookieName.toLowerCase();
var cookieStr = document.cookie;

if (cookieStr == "")
{
return dfltValue;
}

var cookieArr = cookieStr.split("; ");
var pos = -1;
for (var i=0; i<cookieArr.length; i++)
{
pos = cookieArr.indexOf("=");
if (pos > 0)
{
if (cookieArr.substring(0, pos).toLowerCase() == lowerCookieName)
{
return unescape(cookieArr.substring(pos+1, cookieArr.length));
}
}
}

return dfltValue;
}


//test all the oper

document.write("写入名称为 cv 的 cookie...<br>");
WriteCookies("test", "test123", null);

document.write("写入名称为 Ab,带失效日期的 cookie...<br>");
var expires = new Date("December 11, 2010");
WriteCookies("singleblue", "test234", expires);

document.write("读取名称为 singleblue 的 cookie..." + ReadCookies("ab", ""));
-->
http://www.dahenet.com/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值