单击关闭Div,设置Cookie,检查Cookie是否存在,如果不显示,则不显示Div

时间:2018-12-11 22:15:24

标签: javascript cookies

标题说明了一切。我实际上还无法在网络上的任何地方找到这个特定的代码示例,这将使其像我发布的脚本几乎一样容易地工作。

您能帮我弄清楚为什么我的脚本在设置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中是否有一些与缓存相关的代码导致了此问题?

0 个答案:

没有答案