Я не буду вдаваться в подробности, что из себя представляют cookies. Подробнее об этом вы сможете прочитать в википедии. Перейдем сразу к делу. Для начала, рассмотрим работу с cookies в JavaScript. Для этого напишем 3 простые функции: установки, получения и удаления cookies.
Установка cookies
В функцию установки cookies будут передаваться следующие параметры:
name – имя куки (обязательный параметр).
value – значение куки (необязательный параметр).
expires – дата, когда истекает срок действия куки (необязательный параметр).
path – устанавливает путь до куки (необязательный параметр).
domain – домен (необязательный параметр).
secure – указывает на то, что браузер должен использовать SSL, когда отсылает cookies серверу (необязательный параметр).
Обязательно нужно передать name, остальные параметры можно не трогать.
Функция установки cookies:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | function set_cookie (name, value, expires_year, expires_month, expires_day, path, domain, secure) { var cookie_string = name + "=" + escape(value); if (expires_year) { var expires = new Date (expires_year, expires_month, expires_day); cookie_string += "; expires=" + expires.toGMTString(); } if (path) { cookie_string += "; path=" + escape(path); } if (domain) { cookie_string += "; domain=" + escape(domain); } if (secure) { cookie_string += "; secure"; } document.cookie = cookie_string; } |
Получение cookies
Для получения куки необходимо знать ее имя, заранее установленное с помощью функции set_cookie().
Функция получения cookies:
1 2 3 4 5 6 7 | function get_cookie (cookie_name) { if (document.cookie) alert(document.cookie); else alert("Не удалось получить cookies"); } |
Удаления cookies
Для удаления cookies, устанавливаем срок действия куки на 1 секунду назад, от текущего времени.
Функция удаления cookies:
1 2 3 4 5 6 | function delete_cookie (cookie_name) { var cookie_date = new Date (); cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString(); } |
Ниже приведен полный код примера.
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | <html> <head> <title>2Coders.ru</title> </head> <body> <script language="JavaScript"> function set_cookie (name, value, expires_year, expires_month, expires_day, path, domain, secure) { var cookie_string = name + "=" + escape (value); if (expires_year) { var expires = new Date (expires_year, expires_month, expires_day); cookie_string += "; expires=" + expires.toGMTString(); } if (path) { cookie_string += "; path=" + escape(path); } if (domain) { cookie_string += "; domain=" + escape(domain); } if (secure) { cookie_string += "; secure"; } document.cookie = cookie_string; } function delete_cookie (cookie_name) { var cookie_date = new Date (); cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString(); } function get_cookie (cookie_name) { if (document.cookie) alert(document.cookie); else alert("Не удалось получить cookies"); } </script> <a href="javascript:set_cookie('2coders', 1)">Set Cookie</a> <a href="javascript:get_cookie('2coders')">Get Cookie</a> <a href="javascript:delete_cookie('2coders')">Delete Cookie</a> </body> </html> |
Выше, мы рассмотрели работу с кукис в javascript, теперь давайте посмотрим, как это реализовано в jQuery. В jQuery нет встроенных методов для работы с cookies, поэтому приходится использовать сторонний плагин. Я покажу лишь некоторые функции данного плагина, а именно: установка, получение и удаление cookies. Подробнее с возможностями плагина, можно ознакомиться на сайте автора.
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 29 | <script src="http://code.jquery.com/jquery-latest.js"></script> <script src="jquery.cookie.js"></script> <script> $(function() { var COOKIE_NAME = 'test_cookie'; var options = { path: '/', expires: 10 }; // установить cookie $('#setCookies').click(function() { $.cookie(COOKIE_NAME, '2coders.ru', options); return false; }); // получить cookie $('#getCookies').click(function() { alert($.cookie(COOKIE_NAME)); return false; }); // удалить cookie $('#delCookies').click(function() { $.cookie(COOKIE_NAME, null, options); return false; }); }); </script> <a href="#" id="setCookies">Установить Cookie</a> <a href="#" id="getCookies">Получить Cookie</a> <a href="#" id="delCookies">Удалить Cookie</a> |
Будьте внимательны при установке cookies, у пользователя может быть отключен javascript в браузере, в таком случае ваши cookies не установятся.
- Обфускатор javascript-кода
- jQuery: полезные примеры, при работе с DOM
- Определение координат на изображении с помощью JavaScript
- Выделение всех элементов checkbox с помощью jQuery
- jQuery JSON: получаем данные из твиттера
Теги: JavaScript, jQuery

Статья гуд, как раз хочу осваивать cookies в JS
Reply