2017-09-11 73 views
1

我需要在加载主页时打开一个弹出窗口。每当主页打开时,弹出窗口只能出现一次:如果同一会话返回到主页,则不必打开弹出窗口。如果我关闭浏览器并打开主页,则必须打开弹出窗口。每个会话覆盖一次... Cookie?

我使用这个代码,弹出

$(document).ready(function() { 
    $('#overlay').fadeIn('fast'); 
    $('#box').fadeIn('slow'); 

    $(".close").click(
    function(){ 
    $('#overlay').fadeOut('fast'); 
    $('#box').hide(); 
    }); 


    $("#overlay").click(
    function(){ 
    $(this).fadeOut('fast'); 
    $('#box').hide(); 
    }); 

});  

回答

0

写一个cookie,指示显示给用户,然后在每个页面控制它弹出。对于jQuery;

$.cookie("popUpShown", 1, { expires: 1}); 

然后下面的代码在用户离开页面时删除cookie。所以你可以再次显示你的模态。

$(window).unload(function() { 
    $.removeCookie('popUpShown'); 
}); 

,或者你可以使用这样的事情

<body onunload="cookieRemover()"> 

参考cookie的插件:https://github.com/carhartl/jquery-cookie

+0

如何链接cookie来#overlay?我需要链接的插件吗? –

+0

插件仅帮助您管理cookie,阅读文档(可能已更新)并放置一个简单的条件,如果cookie存在,然后显示您的div。 – siniradam