`
doouxiaoyu
  • 浏览: 5953 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

js 对 Cookie的操作

阅读更多
//获得cookie解码后的值
function getCookieVal(offset){
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1)
		endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

//设定cookie值
function setCookie(name, value){
	var expdate = new Date();
	var argv = setCookie.arguments;
	var argc = setCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : 60*60*24;
	var path = (argc > 3) ? argv[3] : contextPath;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
	//alert(expdate);
	document.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString()))
	+((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain))
	+((secure == true) ? "; secure" : "");
}

//删除cookie
function delCookie(name){alert(name);
	var exp = new Date();
	exp.setTime (exp.getTime() - 1);
	var cval = getCookie (name);
	alert(document.cookie);
	document.cookie  =  name  +  "="  +1  +  ";  expires="+  exp.toGMTString(); 
}

//获得cookie原始值
function getCookie(name){
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen){
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return getCookieVal (j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break;
	}
	return null;
}
注意: 其中删除cookie 不是那么好用!正在寻找更好用的方法!有知道的可以共同交流下!

 

分享到:
评论
4 楼 xiaokang1582830 2011-11-08  
jquery.cookie.js 中同样存在bug,document.cookie.split(";")这方法明显是错误的用法,js中只有document.cookie.split("",number)这样的写法吧,你们没出错那可能是浏览器的原因,规范编码中这绝对是错误的写法..
3 楼 xiaokang1582830 2011-11-08  
document.cookie.substring(i, j)这一代码居然在google浏览器上是不存在的方法,我真的是难以理解....
2 楼 yahon 2010-10-26  
获得cookie 可以用转换成数组,在遍历获取。我以前看过,截取字符串获取有缺陷。上网搜搜应该能找到。
1 楼 javaDevil 2010-10-26  
精神可嘉,楼主不必那辛苦,jquery.cookie.js 轻松解决。

相关推荐

Global site tag (gtag.js) - Google Analytics