我不熟悉JavaScript,正在尝试设置一个弹出窗口,该窗口每天仅对访问者显示一次。弹出窗口正常工作,并且在页面4分钟后会打开。如果我关闭弹出窗口,当我仍在同一页面上时,它不会再次显示。问题是,当我转到其他页面时,弹出窗口在4分钟后再次显示。用户关闭弹出窗口后,无论他们访问哪个页面,他们都不会在24小时内再次看到它。
我使用的代码是:
<script>
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + "; " + expires + ";domain=;path=/";
}
function getCookie(cname) {
var name = cname + "=";
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);
if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
}
return "";
}
var cookie = getCookie('ma_epht');
if (!cookie) {
showPopup();
}
$(document).ready(function(){
$("#MyPopup").hide(0).delay(240000).fadeIn(0)}
);
function showPopup() {
setCookie('ma_epht', 'true', 365);
document.querySelector('#MyPopup').style.display = 'block';
}
</script>
<div id="MyPopup" class="overlay">
<div class="autopop">
<a class="close" href="#MyPopup">×</a>
<div class="a-content">
<iframe src="https://www.checkbox.com" width="990" height="550"></iframe>
</div>
</div>
</div>
任何对我做错事的建议都将不胜感激。