Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2015, 15:22
Новичок на форуме
Отправить личное сообщение для ivanfom Посмотреть профиль Найти все сообщения от ivanfom
 
Регистрация: 13.09.2014
Сообщений: 5

Как правельно использовать плагин jquery.cookie
Доброго времени суток форумчане, помогите разобраться с плагином. Не могу понять как им пользоваться. Вот к примеру есть простой код:
<div id="nameTest">Тест плагина jQuery.cookie</div>

и простой скрипт, после клика скрывает блок с id #nameTest.
$('#nameTest').click(function(){
$(this).hide();
});


Вопрос: как сделать так что бы куки запомнили скрытие блока, ну и если можно пример того как удалять куку. Если нетрудно обьясните максимально подробно, я только начал изучать библиотеку. В сети не совсем много разжеваных до мелочей примеров. Заранее благодарен всем за помощь
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2015, 15:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

ivanfom,
примерно так ...
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
 <script>(function(c){"function"===typeof define&&define.amd?define(["jquery"],c):"object"===typeof exports?c(require("jquery")):c(jQuery)})(function(c){function p(a){a=e.json?JSON.stringify(a):String(a);return e.raw?a:encodeURIComponent(a)}function n(a,g){var b;if(e.raw)b=a;else a:{var d=a;0===d.indexOf('"')&&(d=d.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{d=decodeURIComponent(d.replace(l," "));b=e.json?JSON.parse(d):d;break a}catch(h){}b=void 0}return c.isFunction(g)?g(b):b}var l=/\+/g,e= c.cookie=function(a,g,b){if(1<arguments.length&&!c.isFunction(g)){b=c.extend({},e.defaults,b);if("number"===typeof b.expires){var d=b.expires,h=b.expires=new Date;h.setTime(+h+864E5*d)}return document.cookie=[e.raw?a:encodeURIComponent(a),"=",p(g),b.expires?"; expires="+b.expires.toUTCString():"",b.path?"; path="+b.path:"",b.domain?"; domain="+b.domain:"",b.secure?"; secure":""].join("")}for(var d=a?void 0:{},h=document.cookie?document.cookie.split("; "):[],m=0,l=h.length;m<l;m++){var f=h[m].split("="), k;k=f.shift();k=e.raw?k:decodeURIComponent(k);f=f.join("=");if(a&&a===k){d=n(f,g);break}a||void 0===(f=n(f))||(d[k]=f)}return d};e.defaults={};c.removeCookie=function(a,e){if(void 0===c.cookie(a))return!1;c.cookie(a,"",c.extend({},e,{expires:-1}));return!c.cookie(a)}});</script>
  <script>
$(function() {
    var id = $.cookie("id");
    if (id) $("#" + id).hide();
    $("#nameTest").click(function() {
        $(this).hide();
        $.cookie("id", this.id)
    })
});</script>
</head>

<body>
<div id="nameTest">Тест плагина jQuery.cookie</div>
</body>

</html>
Ответить с цитированием
  #3 (permalink)  
Старый 21.01.2015, 15:58
Новичок на форуме
Отправить личное сообщение для ivanfom Посмотреть профиль Найти все сообщения от ivanfom
 
Регистрация: 13.09.2014
Сообщений: 5

рони,спасибо за ответ, но честно не понял. Можете подробно описать что к чему, я хочу вообще сделать что то вроде сообщения. Допустим вывожу сообщение в div блок, далее мне нужно что бы после закрытия блока. Пользователь его больше не видел на определенный срок... Но как это реализовать не пойму, можете расписать код с подсказками если нетрудно для чайника...
Ответить с цитированием
  #4 (permalink)  
Старый 21.01.2015, 16:07
Новичок на форуме
Отправить личное сообщение для ivanfom Посмотреть профиль Найти все сообщения от ivanfom
 
Регистрация: 13.09.2014
Сообщений: 5

Допустим вот:
<div id="systemMessage">
<p>Вы больше не увидите данное сообщение. Мы рекомендуем вам пройти регистрацию, это расширит ваши возможности!</p>
<p id="closeSystemMessage">Закрыть и больше не показывать!</p>
</div>


Вот примерно такой блок будет появляться на сайте, и нужно что бы после клика на #closeSystemMessage он исчезал на 30 дней.
Ответить с цитированием
  #5 (permalink)  
Старый 21.01.2015, 16:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

ivanfom,
читаем доку https://github.com/carhartl/jquery-cookie
http://ruseller.com/lessons.php?id=667&rub=32
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
 <script>(function(c){"function"===typeof define&&define.amd?define(["jquery"],c):"object"===typeof exports?c(require("jquery")):c(jQuery)})(function(c){function p(a){a=e.json?JSON.stringify(a):String(a);return e.raw?a:encodeURIComponent(a)}function n(a,g){var b;if(e.raw)b=a;else a:{var d=a;0===d.indexOf('"')&&(d=d.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{d=decodeURIComponent(d.replace(l," "));b=e.json?JSON.parse(d):d;break a}catch(h){}b=void 0}return c.isFunction(g)?g(b):b}var l=/\+/g,e= c.cookie=function(a,g,b){if(1<arguments.length&&!c.isFunction(g)){b=c.extend({},e.defaults,b);if("number"===typeof b.expires){var d=b.expires,h=b.expires=new Date;h.setTime(+h+864E5*d)}return document.cookie=[e.raw?a:encodeURIComponent(a),"=",p(g),b.expires?"; expires="+b.expires.toUTCString():"",b.path?"; path="+b.path:"",b.domain?"; domain="+b.domain:"",b.secure?"; secure":""].join("")}for(var d=a?void 0:{},h=document.cookie?document.cookie.split("; "):[],m=0,l=h.length;m<l;m++){var f=h[m].split("="), k;k=f.shift();k=e.raw?k:decodeURIComponent(k);f=f.join("=");if(a&&a===k){d=n(f,g);break}a||void 0===(f=n(f))||(d[k]=f)}return d};e.defaults={};c.removeCookie=function(a,e){if(void 0===c.cookie(a))return!1;c.cookie(a,"",c.extend({},e,{expires:-1}));return!c.cookie(a)}});</script>
  <script>
$(function() {
    var id = $.cookie("id"); //проверяем есть ли значение с ключом id
    if (id) $(id).hide();  //если есть скрываем блок с данным значением
    $("#closeSystemMessage").click(function() {
        $("#systemMessage").hide();
        $.cookie("id", "#systemMessage",  { expires: 30 })  // запоминаем значение id в ключе "id" на 30 дней
    })
});

</script>
</head>

<body>
<div id="systemMessage">
<p>Вы больше не увидите данное сообщение. Мы рекомендуем вам пройти регистрацию, это расширит ваши возможности!</p>
<p id="closeSystemMessage">Закрыть и больше не показывать!</p>
</div>
</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 21.01.2015, 16:53
Новичок на форуме
Отправить личное сообщение для ivanfom Посмотреть профиль Найти все сообщения от ivanfom
 
Регистрация: 13.09.2014
Сообщений: 5

рони,
Кажется начал понимать) Спасибо вам за потраченное время, и+
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как загрузить картинку при display:block; используя всем известный плагин lazyload raindew jQuery 9 01.10.2013 14:55
Как грамотно использовать n-ое количество каруселек Socgamer Events/DOM/Window 0 08.04.2013 15:46
isDefaultSelected - как ее использовать для...? Semen Events/DOM/Window 2 25.08.2009 20:13
Как заставить браузер использовать закэшированное изображение? fog Общие вопросы Javascript 5 13.08.2009 15:40
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 23:30