jQuery – Cookies com jquery.cookie

Utilize jquery.cookie, um plugin que torna o trabalho com Cookies muito simples.

Download jquery.cookie: repository on GitHub.

Adicione jquery.cookie.js  nas suas paginas.

Incluir este depois da biblioteca jQuery.

Exemplos

Rastrear o número de vezes que um usuário visitou o website:

$.cookie("visits", 10);

Armazenar a cidade favorita do usuário e especificar o domínio e diretório onde o cookie pode ser lido e escrito:

$.cookie("favourite-city", "London", {path: "/", domain: "jspro.com"});

Armazena o nome do usuário. Este cookie expira em 29 de Outubro de 2013 às 11 da manhã e só pode ser executado através de uma conexão segura.

$.cookie("name", "Aurelio", {expires: new Date(2013, 10, 29, 11, 00, 00), secure: true});

Recuperando os Cookies

Para recuperar um Cookie você precisa passar o nome do cookie, como mostrado nos exemplos abaixo:

recuperando o número de vezes que o usuário visitou o Site:

console.debug($.cookie("visits")); // print "10"

Recuperando o nome do usuário:

console.debug($.cookie("favourite-city")); // print "London" 

Deletando um Cookie

O método removeCookie() retorna true se o cookie requisitado é encontrado e false no caso contrário.

Apenas informe o caminho (path) e o domínio (domain).

Removendo o cookie que armazena as visitas:

$.removeCookie("visits"); // successfully deleted 

Para remover o cookie que armazena a cidade favorita do usuário:

$.removeCookie("favourite-city", {path: "/", domain: "jspro.com"}); // successfully deleted

Em seguida, remover o cookie que armazena o nome do usuário.

Este exemplo falha por que o valor de secure Não foi especificado.

$.cookie("name"); // fails because the secure value is missing

Usage

Create session cookie:

Create expiring cookie, 7 days from then:

Create expiring cookie, valid across entire site:

Read cookie:

Read all available cookies:

Delete cookie:

Note: when deleting a cookie, you must pass the exact same path, domain and secure options that were used to set the cookie, unless you’re relying on the default options that is.