var mycookie = (function mycookie(){
var mc = "mycookie";
var set = function(name,value,time,domain,path){
var str=name+"="+encodeURIComponent(value);
if(time){
var date = new Date(time).toGMTString();
str+=";expires="+date;
}
str=domain?str+";domain="+domain : str;
str=path?str+';path='+path :str;
document.cookie=str;
};
var get = function(name){
if(document.cookie.length>0){
var start=document.cookie.indexOf(name+"=");
if(start>-1){
start+=name.length+1;
var end = document.cookie.indexOf(";",start);
if(end===-1){
end=document.cookie.length;
}
return decodeURIComponent(document.cookie.slice(start,end));
}
}
return "";
};
var getAll = function(){
return document.cookie;
}
var getByJson = function(){
var cookieArr=document.cookie.split(";");
var jsonStr='{';
for(var i=0;i<cookieArr.length;i++){
var cookie=cookieArr[i].split("=");
jsonStr+='"'+cookie[0].replace(/\s+/g,"")+'":"'+decodeURIComponent(cookie[1])+'",';
}
jsonStr=jsonStr.slice(0,-1);
jsonStr+='}';
return JSON.parse(jsonStr);
}
var del = function(name,domain,path){
var date = new Date("1970-01-01");
var str=name+"=null;expires="+date.toGMTString();
str=domain ? str+";domain="+domain : str;
str=path ? str+";path="+path : str;
document.cookie=str;
}
var delAll = function(){
var cookieJson=this.getCookiesByJson(),
str="",
date = new Date("1970-01-01");
for(var i in cookieJson){
str=i+"=null;expires="+date.toGMTString();
}
document.cookie=str;
}
return {
set : set,
get : get,
getAll : getAll,
getByJson : getByJson,
del : del,
delAll : delAll
};
})(jQuery);