Defina o biscoito
Cada cookie é um par de nome/valor.
document.cookie = "userID = 828";
Se você deseja armazenar vários pares de nome/valor por vez, pode usar o septo mais o espaço (;) para separar, por exemplo:
document.cookie = "userID = 828; nome de usuário = hulk";
Você não pode usar um número de segmento (;), vírgula (,), equivalente (=) e espaço no nome ou valor do cookie. É fácil fazer isso em nome dos cookies, mas o valor a ser preservado é incerto. Como armazenar esses valores? valor, e pode ser armazenado no valor do cookie, e também pode ser armazenado no valor do cookie, e também pode ser armazenado no valor do cookie, e também pode ser armazenado no valor do cookie e pode ser armazenado no valor do cookie, e também pode ser armazenado no valor do cookie, e também pode ser armazenado no valor do cookie, e pode ser armazenado no valor do cookie, e pode ser armazenado no valor do cookie, e pode Seja armazenado no valor do cookie e ele pode ser armazenado no valor do cookie e pode ser armazenado. Por exemplo:
document.cookie = "str ="+escape ("eu amo ajax");
Equivalente a:
document.cookie = "str = i%20Love%20ajax";
Depois de usar a codificação Escape (), você precisa usar o UNESCAPE () para decodificar após tomar o valor para obter o valor original do cookie, que foi introduzido anteriormente.
Embora Document.Cookie pareça um atributo, ele pode fornecer valores diferentes. Mas não é o mesmo que o atributo geral.
document.cookie = "userID = 828";
document.cookie = "nome de usuário = hulk";
Neste momento, o navegador manterá dois cookies, que são o usuário do usuário e o nome de usuário, então eles atribuem um valor ao documento.cookie mais como tais declarações como esta:
document.addcookie ("userID = 828");
document.addcookie ("nome de usuário = hulk");
De fato, o navegador define cookies dessa maneira.
document.cookie = "userID = 929";
Dessa forma, defina os cookies nomeados UserID como 929.
Obtenha o valor dos cookies
Aqui estão como obter o valor dos cookies. O valor do cookie pode ser obtido diretamente pelo document.cookie:
Var strcookie = document.cookie;
Isso obterá vários nomes/valores que são separados por um número de segmento. Por exemplo:
<Script Language = "Javascript" type = "text/javascript">
<!-
document.cookie = "userID = 828";
document.cookie = "nome de usuário = hulk";
Var strcookie = document.cookie;
alerta (strcookie);
//->
</script>
Figura 7.1 Exibir o valor do cookie de saída. Pode -se observar que apenas um valor de cookie pode ser obtido ao mesmo tempo, e o nome do cookie não pode ser especificado para obter o valor especificado. Esta é a parte mais problemática do valor do cookie. Os usuários devem analisar essa string por si mesmos para obter o valor especificado do cookie.
<Script Language = "Javascript" type = "text/javascript">
<!-
// Defina dois cookies
document.cookie = "userID = 828";
document.cookie = "nome de usuário = hulk";
// Pegue a corda do biscoito
Var strcookie = document.cookie;
// múltiplos cookies são cortados em vários nomes/valores
var arrcookie = strcookie.split (";");
var userID;
// atravessando a matriz de cookies, processando cada par de cookies
for (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
// Encontre o cookie chamado UserID e retorne seu valor
if ("userID" == arr [0]) {
userID = arr [1];
Quebrar;
}
}
alerta (UserID);
//->
</script>
Isso obtém o valor de um único cookie
Em um método semelhante, você pode obter o valor de um ou mais cookies e suas principais técnicas ainda são operações relacionadas de string e matriz.
Defina a data de rescisão para cookies
Até agora, todo o cookie é um biscoito de sessão único, ou seja, esses cookies serão perdidos após o fechamento do navegador.
No desenvolvimento real, o Cookie geralmente precisa ser armazenado por um longo tempo, como preservar o status de login de usuários. Isso pode ser implementado com as seguintes opções:
document.cookie = "userID = 828; expira = gmt_string";
Entre eles, GMT_STRING é uma sequência de tempo representada pelo formato GMT. Por exemplo: se você deseja definir os cookies para expirar após 10 dias, poderá implementá -lo assim:
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
<!-
// Obtenha o horário atual
var date = new Date ();
VAR EXPIREGADO = 10;
// Defina a data para 10 dias após 10 dias
DAT.SETTIME (DATE.GETTIME ()+EXPIREGADA*24*3600*1000);
// Defina os dois cookies do UserID e Nome de usuário para expirar após 10 dias
document.cookie = "userID = 828; nome de usuário = hulk; expire ="+date.togmtring ();
//->
</script>
Exclua biscoito
Para excluir um cookie, ele pode definir seu tempo de expiração para um tempo passado, como ::
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
<!-
// Obtenha o horário atual
var date = new Date ();
// Defina a data como o tempo passado
date.setTime (DATE.GETTIME () -10000);
// Exclua o UserID deste cookie
document.cookie = "userID = 828; expire ="+date.togmtring ();
//->
</script>
Especifique o caminho que pode acessar cookies
Por padrão, se um cookie for criado em uma página, outras páginas no diretório onde a página também poderá acessar o cookie. Se houver subdiretório neste diretório, você também poderá ser acessado no subdirectory. Por exemplo, os cookies criados em www.xxxx.com/html/b.html ou www.xxx.com/ html/alguns/c.html não podem ser acessados por www.xxxx.com/d.html.
Para controlar o catálogo que pode ser acessado pelos cookies, você precisa usar o parâmetro do caminho para definir cookies.
document.cookie = "nome = value; path = cookiedir";
O Cookiedir representa o catálogo de acesso ao cookie. Por exemplo:
document.cookie = "userID = 320; path =/shop";
Isso significa que os cookies atuais só podem ser usados no diretório curto.
Se você deseja fazer com que o Cookie o use em todo o site, pode especificar o cookie_dir como o diretório raiz, como:
document.cookie = "userID = 320; path =/";
Especifique o nome do host que pode acessar o cookie
Semelhante ao caminho, o nome do host refere -se a diferentes hosts no mesmo domínio, como: www.google.com e gmail.google.com são dois nomes diferentes de host. Por padrão, os cookies criados em um host não podem ser acessados em outro host, mas pode ser controlado pelo parâmetro de domínio para controlá -lo.
document.cookie = "name = value; domain = cookomain";
Tome o Google como um exemplo.
document.cookie = "name = value; domain = .google.com";
Dessa forma, o host em All Google.com pode acessar o cookie.
Exemplo abrangente: Construindo uma função de processamento de biscoitos comum
O processo de processamento de Cookie é mais complicado e tem certas semelhanças. Portanto, várias funções podem ser definidas para concluir a operação geral do Cookie, de modo a alcançar a reutilização do código. As operações de cookies comumente usadas e a implementação da função estão listadas abaixo.
1. Adicione um cookie: addcookie (nome, valor, expirouhouse)
Esta função recebe 3 parâmetros: nome do cookie, valor do cookie e como as horas expira posteriormente. O tempo de expiração não é definido quando a expiração é 0, ou seja, os cookies desaparecem automaticamente quando o navegador está fechado. Esta função é implementada da seguinte maneira:
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
<!-
Função addcookie (nome, valor, expirouhouse) {
var cookring = nome+"="+escape (valor);
// determinar se o tempo de expiração está definido
if (expirehouse> 0) {{
var date = new Date ();
DAT.SETTIME (DATE.GETTIME+EXPIREHOUSE*3600*1000);
Cookring = CookiEstring+"; expire ="+date.togmtring ();
}
document.cookie = cookiestring;
}
//->
</script>
2. Obtenha o valor do cookie do nome especificado: getCookie (nome)
Esta função retorna um nome de biscoito nomeado Nome.
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
<!-
Função getcookie (nome) {
Var strcookie = document.cookie;
var arrcookie = strcookie.split (";");
for (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
if (arr [0] == nome) return arr [1];
}
Retornar "" ";
}
//->
</script>
3. Exclua cookie com nome especificado: Deletecookie (nome)
Esta função pode excluir o cookie do nome especificado, e sua implementação é a seguinte:
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
<!-
Função getcookie (nome) {
Var strcookie = document.cookie;
var arrcookie = strcookie.split (";");
for (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
if (arr [0] == nome) return arr [1];
}
Retornar "" ";
}
//->
</script>
Você também pode usar outro online:
Copie o código do código da seguinte forma:
<Script Language = "Javascript" type = "text/javascript">
Função setcookie (nome, valor) // dois parâmetros, um é o nome do cookie, o outro é o valor
{{
var dias = 30;
var exp = new Date ();
Exp.setTime (exp.getTime () + dias*24*60*60*1000);
document.cookie = nome + "=" + escape (value) + "; expira =" + exp.togmtring ();
}
Função getcookie (nome) // pegue a função de cookies
{{
var anrr = document.cookie.match (novo regexp ("(" (^|) "+nome+" = ([^;]*) (; | $) "))));
if (arr! = nulo) retornar UNESCAPE (ARR [2]);
}
função delcookie (nome) // excluir cookies
{{
var exp = new Date ();
Exp.SetTime (Exp.getTime () - 1);
var cval = getCookie (nome);
if (cval! = null) document.cookie = nome+"="+cval+"; expires ="+exp.togmtString ();
}
Setcookie ("xiaoqi", "3")
Alerta (getcookie ('xiaoqi');
</script>