在页面加载时启动Fancybox而不单击一次

时间:2015-10-23 06:31:12

标签: javascript jquery cookies

我想在页面加载时启动 Fancybox 2 元素,但只加载一次。我想添加至少 50 天的会话cookie。

到目前为止,我在页面加载时加载了Fancybox元素:

window.jQuery(document).ready(function() {
    $.fancybox.open('#popup_box');
});

但是我无法弄清楚如何在cookie if / else语句中实现它:

$(document).ready(function () {
    // set cookie
    $.cookie('firstvisit', 1, {expires: 50});

    if ($.cookie('firstvisit') === 1) {
        //Do stuff if cookie doesn't exist like set a cookie with a value of 1
        $('#popup_box').hide();
    } else {
        $('#popup_box').show();
    }

});

如果用户访问过该页面,我不希望显示 Fancybox 2 元素

1 个答案:

答案 0 :(得分:0)

首先,您需要检查浏览器中是否设置了cookie。如果没有,则设置cookie并打开弹出窗口。 如果是,那么弹出将无法打开。

$(document).ready(function () {
   // set cookie
   if(!$.cookie('firstvisit')){
     $.cookie('firstvisit', 1, {expires: 50});
     $.fancybox.open('#popup_box');
   }    
});