﻿//获取多值Cookie值
function getCookies(sMainName, sSubName){
	var sCookieName = sMainName + "=";
	var sSubCookieName = (sSubName) ? sSubName + "=" : null;
	var sCookie;
	var sWholeCookie = document.cookie;
	var nValueBegin = sWholeCookie.indexOf(sCookieName);
	if(nValueBegin != -1){
		var nValueEnd = sWholeCookie.indexOf(";", nValueBegin);
		if (nValueEnd == -1) 
			nValueEnd = sWholeCookie.length;
		var sValue = sWholeCookie.substring(nValueBegin + sCookieName.length, nValueEnd);//获得Cookie值
			
		if(sSubCookieName){//多值Cookie
			var nSubValueBegin = sValue.indexOf(sSubCookieName);
			if(nSubValueBegin != -1){
				var nSubValueEnd = sValue.indexOf("&", nSubValueBegin);
				if(nSubValueEnd == -1) nSubValueEnd = sValue.length;
				var sSubValue = sValue.substring(nSubValueBegin + sSubCookieName.length, nSubValueEnd);//获得指定的子键值
				return unescape(sSubValue);
			}
		}
	}
	if(!sSubCookieName) 
		return unescape(sValue);
	return null;
}

//获取单值Cookie值
function getCookie(name){
	var cookiestring=document.cookie;
	var search=name + "=";
	var offset = cookiestring.indexOf(search) 
	if (offset != -1){
		offset += search.length;
		var end = cookiestring.indexOf("&", offset);
		if (end == -1)  end = cookiestring.length;
		var returnstring= cookiestring.substring(offset, end);
		end = returnstring.indexOf(";");
		if(end != -1)   returnstring=decodeURIComponent(returnstring.substring(0, end)).toString();
		else    returnstring=decodeURIComponent(returnstring).toString();
		if (returnstring!=null) {return returnstring;}else{return "";}
	}
	else{
		return "";
	}
}

//追加某个设定Cookie值
function setCookie(name, value, expires)
{
    var expdate = new Date();
    var argv = setCookie.arguments;
    var argc = setCookie.arguments.length;
    var expires = (argc > 2) ? argv[2] : null;
    var path = (argc > 3) ? argv[3] : null;
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;
    if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
    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)
{
    var exp = new Date();
    exp.setTime (exp.getTime() - 1);
    var cval = getCookie (name);
    document.cookie = name + "=" + cval + "; expires="+ exp.toGMTString();
}

