Javascript 每天弹出一次

标签 javascript jquery cookies popup

我有 javascript 弹出窗口,它为每个用户显示一次(每天仅一次),我需要相同的弹出窗口,但第二个..当我尝试使用相同的代码创建第二个弹出窗口时,它的工作方式与第一个弹出窗口相同。如果用户看到第一个弹出窗口,他/她就看不到其他弹出窗口。请帮助这是代码

if (document.cookie.indexOf('_visited=1') == -1) {
var delay_popup = 1000;
setTimeout("document.getElementById('parent_popup').style.display='block'", delay_popup);
var date = new Date;
date.setDate( date.getDate() + 1 ); // Current date + 1 day
document.cookie = '_visited=1; path=/; expires=' + date.toUTCString();
}

我不希望它们像 1 Popup 一样工作

最佳答案

我今天刚遇到这个问题。

我所做的是这个

enter code here


function readCookie(name) {
            var nameEQ = name + "=";
            var ca = document.cookie.split(';');
            for(var i=0;i < ca.length;i++) {
                var c = ca[i];
                while (c.charAt(0)==' ') c = c.substring(1,c.length);
                if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
            }


}


var myCookie = readCookie('daycookie');

if (myCookie=''){
   // code to show modal here 
   // then set an expiring token at midnight 
   var date = new Date();
   var midnight = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
   var x = Math.floor((Math.random() * 1000) + 1);
   document.cookie = 'daycookie' + "=" + x + "; " + "expires="+midnight;
}

逻辑首先是如果cookie不存在则显示弹出窗口 一旦弹出窗口显示,它就会创建一个 cookie,该 cookie 在午夜到期,直到第二天,弹出窗 Eloquent 会再次显示。

希望这对您有帮助。

关于Javascript 每天弹出一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31639141/

相关文章:

javascript - 无法理解此脚本从何处进行 ajax 调用(没有 $.ajax)

javascript - 将 div 定位到第一位 - 像堆栈一样

c# - 需要在 HttpWebResponse 中访问 HttpOnly cookie

javascript - 在 Firefox 扩展中使用 JavaScript 删除 cookie

javascript - MongoDB - 不明白如何使用游标遍历集合

javascript - ES5 中的 react 路由

javascript - Jquery 裁剪 : cropper image not changing

javascript - 什么时候将 Javascript 放在 body 中,什么时候放在 head 中,什么时候使用 doc.load ?

javascript - 拥有父元素时如何包装元素?

javascript - 带有数组的 AngularJS cookie