1 一句document.cookie只能写一个name,否则会出现莫名其妙的问题,一般是有些name会没保存成功;

 

2 path和source不同时,设置过期方法可能会失败,尽量这些条件在相同情况下去设置,否则你显示所有的cookie时它还在;

 

3 不设置时间,默认是关闭浏览器失效,小天今天立ke失效,大于今天就保存到设定日期;

 

4 获取时,使用正则代码小于使用for;

 

5 js不能获取失效时间,也不能获取path,也不能获取source,但是这些可以设置;

 

 

以下为用到的代码

//设置COOKIE  //liuliqiang 增加设置path,使各目录能取到相同的COOKIE
function SetCookie(c_id,obj)
{
    var new_ids = eval('['+GetCookie('cmp_ids')+']');
    new_ids[new_ids.length] = c_id;
    new_ids = new_ids.join(',');
    
    document.cookie="cmp_name_" + c_id + "="+escape(obj.getAttribute('cmp_name'))+";  path=/;" + get_24_expires();
    document.cookie="cmp_img_" + c_id + "="+escape(obj.getAttribute('cmp_img'))+"; path=/;" + get_24_expires();
    document.cookie="cmp_ids="+escape(new_ids)+"; path=/;" + get_24_expires();  
}
//获得COOKIE
function GetCookie(name)
{
  var arr=document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  if(arr!=null){return unescape(arr[2]);}else{return "";}
}
//删除COOKIE
function delCookie(id)
{
	document.cookie= "cmp_name_" + id + "="+escape('del')+";path=/; expires=Fri, 31 Dec 1970 23:59:59 GMT;/n";
  document.cookie="cmp_img_" + id + "="+escape('del')+"; path=/;expires=Fri, 31 Dec 1970 23:59:59 GMT;/n" ;
  document.cookie="cmp_ids="+escape(shift_arr(id,eval('['+GetCookie('cmp_ids')+']')))+"; path=/;" + get_24_expires();  
	obj_id('a'+id).checked=false
 }

function get_24_expires()
{
  return  '';//'expires=' + (new Date(new Date().getTime()+24*3600000).toGMTString()) + ';/n';
}