我正在运行以下代码,该代码将加载div并根据cookie隐藏它,但是一旦设置cookie,就不会再次显示它。
我不明白为什么它没有运行。
<!DOCTYPE html>
<html>
<head></head>
<body>
<div style="width:250px;height:250px;background-color:#000;" id="PostShare">
</div>
</body>
<script language="javascript" type="text/javascript" async>
function createPages(name,value,days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = date.toGMTString();
document.cookie = name+"="+value+"; expires="+expires+"; path=/";
}
function readPages(name) {
var flag = 0;
var dcmntPages = document.cookie.split(';');
for(var i=0;i < dcmntPages.length;i++) {
var ck = dcmntPages[i];
while (ck.charAt(0)==' ') {
ck = ck.substring(1,ck.length);
}
if(ck) {
cparts = ck.split('=');
if (cparts[0] == name) flag=1;
}
}
if(flag) {
return true;
} else {
return false;
}
}
function checkPages(name) {
if (readPages(name)) {
document.getElementById('PostShare').style.display = "none";
document.getElementById('PostShare').style.visibility = "hidden";
}
else {
document.getElementById('PostShare').style.display = "block";
document.getElementById('PostShare').style.visibility = "visible";
createPages(name,"cookie 4 the day",1);
}
}
checkPages("MyPages");
</script>
</body>
</html>
我正尝试在隐身模式下使用相同功能,所以它不起作用。请帮助我了解如何使此代码正常工作,或者应该是什么代码,以便在首次加载时为用户隐藏div并在当天的其余加载中显示该div。
谢谢