Sök…


Lägga till och ställa in kakor

Följande variabler ställer in nedanstående exempel:

var COOKIE_NAME = "Example Cookie";    /* The cookie's name. */
var COOKIE_VALUE = "Hello, world!";    /* The cookie's value. */
var COOKIE_PATH = "/foo/bar";          /* The cookie's path. */
var COOKIE_EXPIRES;                    /* The cookie's expiration date (config'd below). */

/* Set the cookie expiration to 1 minute in future (60000ms = 1 minute). */
COOKIE_EXPIRES = (new Date(Date.now() + 60000)).toUTCString();
document.cookie += 
  COOKIE_NAME + "=" + COOKIE_VALUE
  + "; expires=" + COOKIE_EXPIRES
  + "; path=" + COOKIE_PATH;

Läser kakor

var name = name + "=",
    cookie_array = document.cookie.split(';'),
    cookie_value;
for(var i=0;i<cookie_array.length;i++) {
    var cookie=cookie_array[i];
    while(cookie.charAt(0)==' ')
        cookie = cookie.substring(1,cookie.length);
    if(cookie.indexOf(name)==0)
        cookie_value = cookie.substring(name.length,cookie.length);
    }

Detta sätter cookie_value till värdet på cookien, om den finns. Om cookien inte är inställd, kommer cookie_value att cookie_value till null

Ta bort kakor

var expiry = new Date();
expiry.setTime(expiry.getTime() - 3600);
document.cookie = name + "=; expires=" + expiry.toGMTString() + "; path=/"

Detta tar bort cookien med ett visst name .

Testa om cookies är aktiverade

Om du vill se till att cookies är aktiverade innan du använder dem kan du använda navigator.cookieEnabled :

if (navigator.cookieEnabled === false)
{
    alert("Error: cookies not enabled!");
}

Observera att navigator.cookieEnabled på äldre webbläsare kanske inte finns och är odefinierad. I dessa fall kommer du inte att upptäcka att cookies inte är aktiverade.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow