我正在尝试创建一个带有greasemonkey的cookie,以阻止窗口弹出(在窗口弹出一个cookie后,窗口将不会弹出很多次...... 这是代码
function setCookie(c_name, value, expiredays) {
var exdate = new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie = c_name + "=" + escape(value) + ((expiredays==null) ?
"" :
";expires="+exdate.toUTCString());
}
var cookie_names = [
'showDrushimPopUnderUserClick',
'showDrushimPopUnder308'
];
for (var i in cookie_names) {
setCookie(cookie_names[i], 1, 0);
}
但没有创建cookie ....
答案 0 :(得分:5)
如果您设置的Cookie的expires
值等于或早于当前系统时钟,则实际 删除 指定的Cookie (除非path
或domain
不同,或者它是“安全”Cookie - 此处均不适用。)
此:
setCookie(cookie_names[i], 1, 0);
使该函数设置具有即时到期值的cookie,有效地删除具有该名称的任何cookie。
要实际设置新Cookie,请使用:
setCookie(cookie_names[i], 1, null);
这将导致您的代码设置会话cookie - 这可能是您想要的。
或使用:
setCookie(cookie_names[i], 1, 1);
设置一天到期的Cookie。