Форум программистов, компьютерный форум, киберфорум
Наши страницы
jQuery
Войти
Регистрация
Восстановить пароль
 
graft74
0 / 0 / 1
Регистрация: 24.11.2011
Сообщений: 38
#1

Скрыть блок div если если существует cookie - jQuery

23.10.2017, 16:30. Просмотров 167. Ответов 1
Метки нет (Все метки)

Если пользователь первый раз на сайте или не нажимал на ссылку "Спасибо, уже видели ", перед ним отображается блок div
<div class="video-box" >
Содержимое....
<a href="#" class="video-box-link js-video-box-link close-video">Спасибо, уже видели</a>
</div>

После нажатия на "Спасибо, уже видели" окно закрывается пока не очистятся куки в браузере или не пройдет 30 дней. Пытаюсь сделать так:


Javascript
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
// функция возвращает cookie с именем name, если есть, если нет, то undefined    
        function getCookie(name) {
            var matches = document.cookie.match(new RegExp(
            "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
            ));
            return matches ? decodeURIComponent(matches[1]) : undefined;
        }
            // проверяем, есть ли у нас cookie, с которой мы не показываем окно и если нет, запускаем показ
            var alertwin = getCookie("alertwin");
            if (alertwin != "no") { 
                $(document).ready(function(e){
                    if (e.clientY < 0) {
                        
                    
                        // записываем cookie на 30 день, с которой мы не показываем окно
                        var date = new Date;
                        date.setDate(date.getDate() + 30);    
                        document.cookie = "alertwin=no; path=/; expires=" + date.toUTCString();       
                    }    
                });
                $(document).click(function(e) {
                    if (($(".video-box").is(':visible')) && (!$(e.target).closest(".video-box").length)) {
                        $(".video-box").remove();
                    }
                });  
            }
    </script>

Но почему то не работает, что можно поправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2017, 16:30
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Скрыть блок div если если существует cookie (jQuery):

Если совпадает текст введённый в input и div, то скрыть данный div
Изучаю jquery и решил сделать следующее: Я ввожу в input какой то текст и если...

Toggly скрывает/раскрывает div, но если не скрыть его а выбрать следующую ссылку
toggly скрывает/раскрывает div, но если не скрыть его а выбрать следующую...

Скрыть блок DIV
Нужно скрыть блок div, если можно, объясните подробно,как это сделать.

Показать скрыть блок div
Есть ссилка - по клику которой блок должен показаться или скрыться! &lt;a...

Показать/скрыть блок div при клике
Добрый день! Пробую сделать штуку на jQuery, чтобы при щелчке мыши по надписи...

Как скрыть блок div по клику вне самого блока?
Всем привет! Нашёл вот такой код: document.onclick = function(ev) { myDiv...

1
M83
0 / 0 / 2
Регистрация: 23.10.2017
Сообщений: 8
23.10.2017, 23:54 #2
Боюсь что будет отчасти оффтопиком, но на твоем месте я бы прибегнул к использованию LocalStorage.

Javascript
1
2
3
     var date = new Date();
     var checkDate = date.setMonth(date.getMonth() + 3);
     localStorage.setItem('alertwin',  checkDate);

В таком случае не будет заморочек с куки, хоть и придется провести дополнительную проверку на соответствие дат.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2017, 23:54
Привет! Вот еще темы с решениями:

При наведении на один блок, появляется другой блок и прячется если на блок не наводить
Как тут

jQuery Cookie не читает куки если запустить *.html с диска локально!
Привет. Есть html файл, назовем его &quot;Index.html&quot;. В этом файле jQuery код,...

Как скрыть вывод inpute если value = 0
Всем доброго дня господа. Суть такая, есть калькулятор на js, в нем есть &quot;Чек&quot;,...

Бросать в div только если он пуст
Использую .droppable из jQuery, чтобы перебрасывать элементы между div'ами. Но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru