Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在每个会话中仅显示一次模态时事通讯弹出窗口?_Javascript_Jquery_Cookies - Fatal编程技术网

Javascript 如何在每个会话中仅显示一次模态时事通讯弹出窗口?

Javascript 如何在每个会话中仅显示一次模态时事通讯弹出窗口?,javascript,jquery,cookies,Javascript,Jquery,Cookies,这是我在每次会话中只使用一次模式弹出窗口的代码,我的问题是,每次我访问主页时,div都会出现。相反,我希望每个会话只显示一次div。我试着用饼干来修复,但没用 <script> if (!Cookies.get('popup')) { setTimeout(function() { $('#myModal').modal(); }, 600); } $('#myModal').on('shown.bs.m

这是我在每次会话中只使用一次模式弹出窗口的代码,我的问题是,每次我访问主页时,div都会出现。相反,我希望每个会话只显示一次div。我试着用饼干来修复,但没用

<script>
    if (!Cookies.get('popup')) {
        setTimeout(function() {
            $('#myModal').modal();
        }, 600);
    }
    $('#myModal').on('shown.bs.modal', function () {
        // bootstrap modal callback function
        // set cookie
        Cookies.set('popup', 'valid', { expires: 3, path: "/" }); // need to set the path to fix a FF bug
    })
</script>

如果(!Cookies.get('popup')){
setTimeout(函数(){
$('#myModal').modal();
}, 600);
}
$('#myModal').on('show.bs.modal',function(){
//引导模式回调函数
//设置cookie
set('popup','valid',{expires:3,路径:“/”});//需要设置路径来修复FF错误
})
设置一个cookie

$(document).ready(function() {
if ($.cookie('noShowWelcome')) $('.yourDivClass').hide();
else {
    $("#close-welcome").click(function() {
        $(".yourDivClass").fadeOut(1000);
        $.cookie('noShowWelcome', true);    
    });
  }
});
您需要包含jQuery.cookie javascript文件


希望这能有所帮助:)

使用会话存储来存储一个标志,表明模式是否已显示。首先将标志设置为false,然后在显示的模式中将其设置为true,因此您可以检查标志是否为true,如果为true,则不显示模式