简单模式弹出窗口显示每个会话一次


Simplemodal popup display once per session?

我是javascript和jQuery的新手。我正在使用 SimpleModal basic 在用户访问我的网站时显示弹出加载。它运行良好,但每次访问者访问主页时,都会显示弹出窗口。

例如:

  • 访客 A 访问我的主页,弹出窗口首次显示 - 很棒
  • 访问者 A 转到我网站内的页面,然后单击徽标返回主页,弹出窗口第二次显示,并且每次访问者 A 返回主页时都会继续显示 - 这不好。

我需要每个会话仅显示一次此弹出窗口。

我已经在互联网上搜索了所有内容,并看到可以使用cookie来处理这个问题,但是我不确定如何将cookie函数绑定到模态脚本的功能中。

如何实现 cookie 来跟踪模态函数,并在页面加载时仅显示一次?

下面是加载模式内容的脚本:

<?php if($_SERVER['REQUEST_URI'] == '/'): ?>

<script type="text/javascript" src="<?php bloginfo(template_url);?>/assets/javascripts/jquery.leanModal.min.js"></script>
<script type="text/javascript">
    jQuery(document).ready(function() { 
        jQuery('#basic-modal-content').modal();
    });
</script>
<?php endif;?>
您可以使用

名为jQuery cookie的jquery插件来执行此操作,下载它并使用脚本标签将其包含在页面上; 将您的代码更改为以下内容

<script type="text/javascript">
    jQuery(document).ready(function() { 
        if (jQuery.cookie('shown_modal')==undefined) {
           jQuery.cookie('shown_modal', 'true');
           jQuery('#basic-modal-content').modal();
        }
    });
</script>