Установить cookie
Каждый cookie - это пара/значение.
document.cookie = "userid = 828";
Если вы хотите хранить несколько пар имен/значения за раз, вы можете использовать перегородку плюс пространство (;), например:
document.cookie = "userid = 828; username = hulk";
Вы не можете использовать номер сегмента (;), запятую (,), эквивалентный (=) и пространство в имени или значении cookie. Это легко сделать во имя файлов cookie, но значение, которое нужно сохранить, неясно. Как сохранить эти значения? ценность, и его можно хранить в значении печенья, и его также можно хранить в значении печенья, а также можно хранить в значении печенья, а также можно хранить в значении печенья, и его можно хранить в значении печенья, и его также можно хранить в значении печенья, и его также можно хранить в значении печенья, и его можно хранить в значении печенья, и его можно хранить в значении печенья, и он может хранить в значении печенья, и его можно хранить в значении печенья, и его можно хранить. Например:
document.cookie = "str ="+rescep ("Я люблю Ajax");
Эквивалентно:
document.cookie = "str = i%20love%20ajax";
После использования кодирования ascop () вам необходимо использовать Unescape () для декодирования после получения значения для получения исходного значения cookie, которое было введено ранее.
Хотя Document.cookie выглядит как атрибут, он может дать разные значения. Но это не то же самое, что общий атрибут.
document.cookie = "userid = 828";
document.cookie = "username = hulk";
В настоящее время браузер будет поддерживать два файла cookie, которые являются именами пользователя и имени пользователя, поэтому они присваивают значение документу. Куки больше похожи на такие утверждения, как это:
document.addcookie ("userid = 828");
document.addcookie ("username = hulk");
На самом деле, браузер устанавливает файлы cookie таким образом.
document.cookie = "userid = 929";
Таким образом, установите файлы cookie с именем userid на 929.
Получите ценность файлов cookie
Вот как получить ценность файлов cookie. Значение cookie может быть получено непосредственно документом. Cookie:
Var strcookie = document.cookie;
Это получит несколько имени/значений, которые разделены по номеру сегмента. Например:
<script language = "javascript" type = "text/javascript">
<!-
document.cookie = "userid = 828";
document.cookie = "username = hulk";
Var strcookie = document.cookie;
блюд (Strcookie);
//->
</script>
Рисунок 7.1 Отображает значение выходного файла cookie. Видно, что только одно значение cookie может быть получено за один раз, и имя cookie не может быть указано, чтобы получить указанное значение. Пользователи должны анализировать эту строку сами, чтобы получить указанное значение cookie.
<script language = "javascript" type = "text/javascript">
<!-
// установить два файла cookie
document.cookie = "userid = 828";
document.cookie = "username = hulk";
// Получить строку cookie
Var strcookie = document.cookie;
// Несколько файлов cookie разрешены на несколько имен/значения
var arrcookie = strcookie.split (";");
var userId;
// пересечение массива cookie, обрабатывая каждую пару cookie
для (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
// Найти cookie с именем userid и вернуть его значение
if ("userId" == arr [0]) {
userId = arr [1];
Перерыв;
}
}
Alert (userId);
//->
</script>
Это получает ценность одного печенья
Аналогичным методом вы можете получить значение одного или нескольких файлов cookie, и его основными методами все еще являются связанные операции строки и массива.
Установите дату завершения для файлов cookie
До сих пор все cookie -это односессионное печенье, то есть эти файлы cookie будут потеряны после закрытия браузера.
В фактической разработке cookie часто нужно хранить в течение длительного времени, например, сохранение статуса входа пользователя. Это может быть реализовано со следующими параметрами:
document.cookie = "userId = 828; истекает = gmt_string";
Среди них GMT_STRING - это строка времени, представленная форматом GMT. Например: если вы хотите установить файлы cookie на срок действия истечения через 10 дней, вы можете реализовать его так:
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
<!-
// Получить текущее время
var date = new Date ();
var истекает = 10;
// Установить дату на 10 дней после 10 дней
Date.settime (date.gettime ()+истечь*24*3600*1000);
// Установите два файла cookie of userid и username на срок действия истечения через 10 дней
document.cookie = "userId = 828; userName = hulk; oxire ="+date.togmtring ();
//->
</script>
Удалить cookie
Чтобы удалить файл cookie, он может установить время истечения срока годности, например ::
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
<!-
// Получить текущее время
var date = new Date ();
// Установить дату как прошлое время
date.settime (date.gettime () -10000);
// Удалить пользователь идут этот файл cookie
document.cookie = "userId = 828; истечь ="+date.togmtring ();
//->
</script>
Укажите путь, который может получить доступ к файлам cookie
По умолчанию, если на странице создается файл cookie, другие страницы в каталоге, где страница также может получить доступ к файлу cookie. Если в этом каталоге есть суб -директория, к вам также можно получить доступ в подразделении. Например, файлы cookie, созданные в www.xxxx.com/html/b.html или www.xxx.com/ html/some/c.html, нельзя получить www.xxxx.com/d.html.
Чтобы контролировать каталог, который можно получить с помощью файлов cookie, вам необходимо использовать параметр Path для установки файлов cookie.
document.cookie = "name = value; path = cookiedir";
Cookiedir представляет собой каталог доступа к печенью. Например:
document.cookie = "userid = 320; path =/shop";
Это означает, что текущие файлы cookie можно использовать только в коротком каталоге.
Если вы хотите заставить cookie использовать его под всем веб -сайтом, вы можете указать cookie_dir в качестве корневого каталога, например:
document.cookie = "userid = 320; path =/";
Укажите имя хоста, которое может получить доступ к cookie
Подобно пути, имя хоста относится к разным хостам в одном и том же домене, таких как: www.google.com и gmail.google.com - это два разных имена хостов. По умолчанию файлы cookie, созданные в хосте, не могут быть доступны под другим хостом, но к нему можно управлять параметром домена для его управления.
document.cookie = "name = value; domain = cookomain";
Возьмите Google в качестве примера.
document.cookie = "name = value; domain = .google.com";
Таким образом, хост под всеми Google.com может получить доступ к файлу cookie.
Комплексный пример: построение общей функции обработки файлов cookie
Процесс обработки cookie более сложный и имеет определенное сходство. Следовательно, несколько функций могут быть определены для завершения общей работы cookie, чтобы достичь повторного использования кода. Обычно используемые операции и реализацию функции cookie перечислены ниже.
1. Добавить cookie: addcookie (имя, значение, истечение домов)
Эта функция получает 3 параметра: название cookie, значение cookie и то, как срок его действия истекает позже. Время истечения не установлено, когда истекает домик 0, то есть файлы cookie автоматически исчезают, когда браузер закрыт. Эта функция реализована следующим образом:
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
<!-
Функция addCookie (имя, значение, истечение домов) {
var cookring = name+"="+rececod (value);
// определить, установлено ли время истечения срока действия
if (expirehouse> 0) {{
var date = new Date ();
date.settime (date.gettime+oxirehouse*3600*1000);
cookring = cookiestring+"; истекает ="+date.togmtring ();
}
document.cookie = cookiestring;
}
//->
</script>
2. Получите значение cookie указанного имени: GetCookie (имя)
Эта функция возвращает значение cookie с именем имени.
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
<!-
Функция getCookie (имя) {
Var strcookie = document.cookie;
var arrcookie = strcookie.split (";");
для (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
if (arr [0] == name) return arr [1];
}
Возвращаться "" ";
}
//->
</script>
3. Удалить cookie с указанным именем: DeleteCookie (имя)
Эта функция может удалить cookie указанного имени, и ее реализация следующая:
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
<!-
Функция getCookie (имя) {
Var strcookie = document.cookie;
var arrcookie = strcookie.split (";");
для (var i = 0; i <arrcookie.length; i ++) {
var arr = arrcookie [i] .split ("=");
if (arr [0] == name) return arr [1];
}
Возвращаться "" ";
}
//->
</script>
Вы также можете использовать еще один онлайн:
Код кода копирования следующим образом:
<script language = "javascript" type = "text/javascript">
Функция setCookie (имя, значение) // два параметра, один - имя cookie, другое - значение
{{
var Days = 30;
var exp = new Date (); // Новая дата ("31 декабря 9998");
exp.settime (exp.gettime () + дни*24*60*60*1000);
document.cookie = name + "=" + exck (value) + "; истекает =" + exp.togmtring ();
}
Функция getCookie (имя) // Принять функцию cookie function
{{
var anrr = document.cookie.match (new Regexp ("(" (^|) "+name+" = ([^;]*) (; | $) "))));
if (arr! = null) вернуть Unescape (arr [2]);
}
Функция Delcookie (имя) // Удалить файлы cookie
{{
var exp = new Date ();
exp.settime (exp.gettime () - 1);
var cval = getCookie (имя);
if (cval! = null) document.cookie = name+"="+cval+"; expires ="+exp.togmtstring ();
}
SetCookie ("xiaoqi", "3")
Оповещение (getCookie ('xiaoqi');
</script>