标题说明了一切。我实际上还无法在网络上的任何地方找到这个特定的代码示例,这将使其像我发布的脚本几乎一样容易地工作。
您能帮我弄清楚为什么我的脚本在设置cookie后最终两次不显示div两次,有时显示3次吗?
加载网站后,我已经进行了检查-cookie被设置,但是在单击另一页时,仍然会显示显示框(div)。再单击几次“我接受”后,它最终不再显示。
我想弄清楚为什么需要多于1次单击才能保持关闭状态。我的代码效率很低吗?像我下面的代码一样,保持这样简单的功能是不可能的吗?
这是我的代码
身体负荷:
<body onload="cookiefunction()"
用于检查cookie是否存在以及是否不显示div的Javascript,如果不存在,则不显示div:
function cookiefunction() {
if (document.cookie.indexOf("acceptterms") >= 0) {
document.getElementById("notice").style.display = "none";
} else {
document.getElementById("notice").style.display = "block";
}
}
单击“我接受”链接后设置cookie的代码
function closediv() {
document.getElementById("notice").style.display ="none";
document.cookie = "acceptterms=yes; expires=Thu, 18 Dec 2023 12:00:00 UTC";
}
应该显示的div:如果我接受,则单击无
<div id="notice" style="display:none;">
<a href="#" id="close" onclick="closediv()">I Accept Terms</a>
</div>
.htaccess中是否有一些与缓存相关的代码导致了此问题?