在页面加载fancybox弹出窗口上设置jQuery cookie时出现问题

时间:2011-06-28 23:15:10

标签: jquery cookies fancybox

我正在尝试使用cookie设置页面加载fancybox弹出窗口,但它不起作用。我错过了一些东西,没有看到,我需要你的帮助。 with-no-cookie脚本正常工作。 我已将 jquery.cookie.js 也与 jquery / 1.5.2 / jquery.min.js 一起添加,并为了测试目的多次更改了Cookie的名称,他们都没有工作。

这是从官方网页

获得的onload弹出窗口
<script>
jQuery(document).ready(function() {
    $.fancybox(
        '<h2>Hi!</h2><p>Lorem ipsum dolor</p>',
        {
                'autoDimensions'    : false,
            'width'             : 350,
            'height'            : 'auto',
            'transitionIn'      : 'none',
            'transitionOut'     : 'none'
        }
    );
});
</script>

这是onload popup WITH cookie

<script>
$(function() {
    if ($.cookie('mycookie')) {
        // it hasn't been three days yet
    } else {
        $.fancybox(
            '<h2>Hi!</h2><p>Lorem ipsum dolor</p>',
            {
                'autoDimensions'    : false,
                'width'             : 350,
                'height'            : 'auto',
                'transitionIn'      : 'none',
                'transitionOut'     : 'none'
            }
        );
    }
});

// set cookie to expire in 3 days
$.cookie('mycookie', 'true', { expires: 3});
</script>

1 个答案:

答案 0 :(得分:0)

这应该有效。请确保您在网络服务器上运行此操作,浏览器可能不允许设置本地Cookie(例如Chrome)

但是,如果您真的想检查cookie值,而不仅仅是cookie存在,那么就不能这样做。 每个cookie值都将被识别为布尔值truenull除外,空字符串)

使用

if ($.cookie('mycookie')==='true') 

代替。