Довольно часто возникает необходимость запоминать измененное состояние элементов DOM на веб-странице, и при ее обновлении сохранять это состояние для пользователя, инициировавшего данные изменения.
Решение
Для решения этой задачи используем очень простой, легкий и полезный плагин jQuery Cookie (листинг 16.1.1).
Листинг 1 6 .1 .1 . Использование плагина jQuery Coo k ie
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru"> <head> <title>example-16-1-1</title> <content> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="js/jquery-1.5.2.min.js" type="text/javascript"></script> <script src="js/jquery.cookie.js" type="text/javascript"></script> <script type="text/javascript"> $(function(){ var options = { path: "/", expires: 10 }; $("#setCookie").click(function(){ $.cookie("testCookie", "Это значение cookie", options); }); $("#getCookie").click(function(){ alert($.cookie("testCookie")); }); $("#delCookie").click(function(){ $.cookie("testCookie", null, options); }); }); </script> </head> <body> <button id="setCookie">Set Cookie</button> <button id="getCookie">Get Cookie</button> <button id="delCookie">Delete Cookie</button> </body> </html> |
Обсуждение
Итак, для работы с плагином нам понадобится сначала подключить файл библиотеки jQuery и затем файл плагина jquery.cookie.js. HTML-разметка описывает три кнопки, с помощью которых мы будем устанавливать (Get Cookie), считывать (Set Cookie) и удалять (Delete Cookie) cookie.
Для того чтобы установить cookie, необходимо вызвать функцию $.cookie(name, value, [options]), предоставляемую плагином, и передать ей в качестве аргументов имя и значение cookie. Третьим (необязательным) параметром можно передать объект options, содержащий дополнительные настройки cookie, такие как expires, path, domain, secure.
Для того чтобы прочитать значение cookie, достаточно вызвать функцию
$.cookie(name), передав только один аргумент — имя cookie.
Удалить cookie тоже несложно — вызвать функцию с передачей в качестве второго параметра значения null.
Все очень просто, только необходимо отметить, что если вы устанавливали cookie с передачей необязательного аргумента options, то для корректного удаления этого cookie его также необходимо будет указать.
Дополнительную информацию можно найти по адресу https://github.com/ carhartl/jquery-cookie.
Источник: Самков Г. А. jQuery. Сборник рецептов. — 2-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2011. — 416 с.: ил. + CD-ROM — (Профессиональное программирование)
Похожие посты:
- Релевантность (0)
- Изменение высоты строки (межстрочного интервала) в тексте (0)
- Изменение стиля маркеров списка или удаление маркеров (0)
- Справочник по обобщенным представлениям Django (0)
- Встроенные шаблонные теги и фильтры Django (0)
- Справочник по встроенным фильтрам add Django (0)
- Аргументы представления, принимаемые по умолчанию Django (0)