我在本网站的其他地方发现了类似的代码,但无法让它适用于我的情况。
我正在尝试延迟向新访客显示div(在这种情况下延迟8秒),但如果设置了Cookie,则会立即向RETURNING访客显示div。
目前,似乎第一部分工作 - 在8秒后向新访客显示div - 我的代码设置了cookie但第二部分 - 立即向返回的访客显示div - 不起作用事实上,似乎从来没有显示div内容。
我已经尝试了一切我能想到的东西,但没有运气。
以下是HEAD部分中的相关代码(包括cookie代码):
<script type="text/javascript">
function createCookie(name, value, days) {
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
} else var expires = "";
document.cookie = name + "=" + value + expires + "; path=/";
}
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);
}
return null;
}
</script>
<script type="text/javascript">
function showbox() {
document.getElementById("show-this").style.visibility = "visible";
}
if (!readCookie('visitedPreviously')) { //if he/she is a new user
setTimeout("showbox()", 8000); // after 8 secs createCookie('visitedPreviously', 'visitedPreviously', 3); // 365 days persistence
}
</script>
<div id="show-this" style="visibility: hidden"><div class="center-this"><a href="mylink" target="_blank"><img src="mysource" alt="some text" /></a></div>
</div>
我已经尝试将“功能showbox”移动到BODY,尝试使用该函数内的if / else语句,将代码移动到.js文件,使用css等等,但现在我只需要一些帮助,因为我显然不喜欢我不知道我在做什么。
感谢您的时间。
答案 0 :(得分:0)
if (!readCookie('visitedPreviously')) { //if he/she is a new user
setTimeout("showbox()", 8000); // after 8 secs
createCookie('visitedPreviously', 'visitedPreviously', 3); // 365 days persistence
} else {
showbox();
}
你忘记了其他的事情:)