Jquery如果不存在显示Div

时间:2014-01-09 02:39:11

标签: javascript jquery css cookies modal-dialog

我试图在我的网站上设置模态。我想要它,所以如果一个cookie不存在,模式会弹出。然后,用户将能够选择是否停止模式在会话的剩余时间内弹出,或者阻止模式无限期地再次显示。因此,我希望脚本检查cookie是否存在,然后采取必要的措施。我在Jquery当然不好,但我匆匆忙忙......我的代码:

    var points_modal = $.cookie('points-modal');
    if (typeof points_modal == "undefined" {
        $('.fade').css( "display", "block !important");
        $('.modal-back').css( "display", "block !important");
    } else {
        $('.fade').show(); // hidden or cookie is not set, set just in case
        $('.modal-back').show();
        $.removeCookie('points-modal'); // prevent multiple instances
        $.cookie('points-modal', 'show'); // update (or set) the cookie
    }
    if (points_modal == "never") {
        $('fade').hide();
        $('.modal-back').hide();
    }
    //Clicks
    $('never').click(function () {
        $.removeCookie('points-modal');
        $.cookie('points-modal', 'never', {
            expires: 999
        });
    });
});

模态最初显示:隐藏。另外,有什么方法可以让fadeIn效果起作用吗?感谢。

查看JSFiddle here

1 个答案:

答案 0 :(得分:1)

有多种语法和其他问题,请尝试

var points_modal = $.cookie('points-modal');
//show the modal if the cookie is not set to never
if (points_modal != "never") {
    $('.fade').show();
    $('.modal-back').show();
}

$('#never').click(function () {
    $.removeCookie('points-modal');
    $.cookie('points-modal', 'never', {
        expires: 999
    });
    //hid the modal
    $('.fade').hide();
    $('.modal-back').hide();
});

演示:Fiddle