对cookie进行操作的代码
function getCookie(cookie_name)
{//获取指定COOKIES的值
var allcookies = document.cookie;
var cookie_pos = allcookies.indexOf(cookie_name);
// 如果找到了索引,就代表cookie存在,反之,就说明不存在。
if (cookie_pos != -1)
{// 把cookie_pos放在值的开始,只要给值加1即可。
cookie_pos += cookie_name.length;
var cookie_end = allcookies.indexOf(";", cookie_pos);
if (cookie_end == -1) cookie_end = allcookies.length;
var value = unescape(allcookies.substring(cookie_pos, cookie_end).replace("=",""));
}
return value;
}
function setCookie(name,value,expires,path,domain,secure)
{//设置COOKIES的值
var expDays = expires * 24 * 60 * 60 * 1000;
var expDate = new Date();
expDate.setTime(expDate.getTime() + expDays);
var expString = ((expires == null) ? "" : (";expires=" + expDate.toGMTString()));
var pathString = ((path == null) ? "" : (";path=" + path));
var domainString = ((domain == null) ? "" : (";domain=" + domain));
var secureString = ((secure == true) ? ";secure" : "");
document.cookie = name + "=" + escape(value) + expString + pathString + domainString + secureString;
}
function delCookie(name){
var expDate = new Date(); //当前时间
expDate.setTime(expDate.getTime() - 1); //删除cookie 只需将cookie设置为过去的时间
var cval = getCookie(name);
document.cookie = name + "=" + cval + ";expires=" + expDate.toGMTString();
}
也可以jquery的插件。
https://plugins.jquery.com/cookie/
https://github.com/carhartl/jquery-cookie 推荐
https://github.com/js-cookie/js-cookie 新版
jQuery.cookie = function(name, value, options) {
if (typeof value != 'undefined') {
options = options || {};
if (value === null) {
value = '';
options = $.extend({}, options);
options.expires = -1;
}
var expires = '';
if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
var date;
if (typeof options.expires == 'number') {
date = new Date();
date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
} else {
date = options.expires;
}
expires = '; expires=' + date.toUTCString();
}
var path = options.path ? '; path=' + (options.path) : '';
var domain = options.domain ? '; domain=' + (options.domain) : '';
var secure = options.secure ? '; secure' : '';
document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
} else {
var cookieValue = null;
if (document.cookie && document.cookie != '') {
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = jQuery.trim(cookies[i]);
if (cookie.substring(0, name.length + 1) == (name + '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
break;
}
}
}
return cookieValue;
}
};
/**
$.cookie("name"); //根据cookie名字取到cookie值
$.cookie("name", "value");//设置cookie 名字,值
$.cookie("name", value, { expires: 7 }); //设置cookie 名字,值,生命周期天
$.cookie("name", value, { expires: 7, path: '/'}); //加有效路径
$.cookie("name", null); //根据cookie名移除cookie
*/