jQuery cookie при загрузке страницы - PullRequest
0 голосов
/ 07 августа 2011

Я использую всплывающее окно fancybox в jQuery,

, как я могу отображать это каждый раз, когда пользователь заходит на мой сайт?Желательно, чтобы он показывался один раз за сеанс…

Вот пример, как мне реализовать / установить cookie

http://www.sohtanaka.com/web-design/examples/modal-window/index2.htm

Ответы [ 2 ]

0 голосов
/ 24 мая 2013

Вам нужно использовать плагин cookie, чтобы это работало - https://github.com/carhartl/jquery-cookie

Тогда используйте размещенный код Digbyswift ... Отлично работает!

$(document).ready(function(){

    var check_cookie = $.cookie('the_cookie');

    if(check_cookie == null){

        $.fancybox('<h2>Some content</h2>', {
            'onComplete' : function() {
                    $.cookie('the_cookie', 'the_value');
            }
        });
    }
});
0 голосов
/ 07 августа 2011

Создайте cookie, как только откроется fancybox, используя:

'onComplete' : function() {
        // set cookie
    }

но всегда проверяйте наличие куки, прежде чем открывать fancybox. Не устанавливайте значение «expire», и это приведет к удалению cookie по окончании сеанса.

Edit:

Просто расширив отправленный вами код:

$(document).ready(function(){

    var check_cookie = $.cookie('the_cookie');

    if(check_cookie == null){

        $.fancybox('<h2>Some content</h2>', {
            'onComplete' : function() {
                    $.cookie('the_cookie', 'the_value');
            }
        });
    }
});

Если страница загружается и сценарий не может найти cookie, открывается окно fancybox. Если страница загружается и файл cookie существует, модное окно не открывается.

Здесь есть дополнительная информация о открывающем fancybox, когда страница загружается здесь.

...