页面加载后的弹出窗口每24小时仅打开一次

时间:2018-01-28 19:41:09

标签: javascript html modal-dialog popup popupwindow

我有一个工作弹出窗口,在页面加载后打开。

我希望每24小时显示一次,或者每次用户打开浏览器或任何其他方式显示一次,以便在每次刷新页面后都不显示。

我知道可以使用cookie,浏览器缓存或php功能来完成。你能以最简单的方式提供任何代码吗?我应该使用数据库,cookie还是其他方式来存储这些数据?

谢谢!

function PopUp(hideOrshow)
{if(hideOrshow=='hide')
document.getElementById('PageLoadModal').style.display="none";
else document.getElementById('PageLoadModal').removeAttribute('style')}

window.onload=function(){setTimeout(function(){PopUp('show')},25)}
#PageLoadModal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(200,130,0,.6);z-index:99}
#popup{width:50%;height:50%;position:relative;top:25%;left:25%;background:#1C2328}
<div id="PageLoadModal" style='display:none'>
  <div id="popup">
    <h2 onClick="PopUp('hide')">CONTENT</h2>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

如评论中所述,您可以使用具有到期日期的cookie来执行此操作。基本上,如果特定cookie不存在,只需显示弹出窗口,同时设置cookie为24小时到期时间。

if (document.cookie.indexOf("popupShown=true") == -1) {
    document.cookie = "popupShown=true; max-age=86400"; // 86400: seconds in a day
    // make the popup show here
}

24小时后,cookie将过期,在下一个网页加载时,弹出窗口将再次显示。

相关问题