简体   繁体   中英

create a cookie with javascript in greasemonkey

i'm trying to create a cookie with greasemonkey in order to stop a window from popping up (after the windows pops up a cookie is created the the window won't popup to many times... this is the code

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);
}

but no cookie is been created....

If you set a cookie that has an expires value equal to, or older than, the current system clock, it actually deletes the named cookie instead (Unless the path or domain are different, or it is a "secure" cookie -- none of which apply here).

This:

setCookie(cookie_names[i], 1, 0);

Causes that function to set a cookie with an instant expiration value, effectively deleting any cookie with that name.

To actually set a new cookie, use:

setCookie(cookie_names[i], 1, null);

which will cause your code to set a session cookie -- which is probably what you want.

Or use:

setCookie(cookie_names[i], 1, 1);

To set a cookie that expires in a day.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM