仅显示一次模态

Reveal Modal display only once

本文关键字:一次 模态 显示      更新时间:2023-09-26

我正在使用基础模态来制作弹出窗口。我如何修改这个代码,这样每个用户每天只出现一次弹出窗口。感谢

<script>
    $(document).ready(function(){$('#myModal').foundation('reveal', 'open')});
    </script>

如果希望它不在一个页面视图中多次打开,可以添加一个类来阻止重新打开。注意:not选择器的使用

$(document).ready(function(){$('#myModal:not(.opened)').foundation('reveal', 'open')}).addClass('opened');

如果您想防止模态在一段时间内打开不止一次,请查看此MDN示例,了解如何设置具有过期时间的cookie,其中doSomethingOnlyOnce是您插入的cookie的名称,稍后可以在document.cookie中检查。

function doOnce() {
  if (document.cookie.replace(/(?:(?:^|.*;'s*)doSomethingOnlyOnce's*'='s*([^;]*).*$)|^.*$/, "$1") !== "true") {
    alert("Do something here!");
    document.cookie = "doSomethingOnlyOnce=true; expires=Fri, 31 Dec 9999 23:59:59 GMT";
  }
}

您希望用代码替换alert()调用,并以编程方式为cookie字符串的expires属性生成日期。

更多信息请点击此处:https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie