我在HTML页面上有加载动画,它工作正常。问题是每当页面刷新时,加载动画再次出现,我想将其限制为仅首次加载页面。
我使用cookie来解决问题,我从stackoverflow问题中获取了一个参考: load an ad (div) just once on first load。我使用完全相同的代码,在那里回答,只是替换了我的身份。
$(document).ready(function() {
if (!readCookie("adSeen")) {
$("#loading").fadeOut("slow");
createCookie("adSeen", "1", 1000);
}});
其余代码相同。我的cookie已启用,但它无效。帮我解决一下。
答案 0 :(得分:2)
将您的代码更改为
$(document).ready(function() {
if (!readCookie("adSeen")) {
$("#loading").fadeIn("slow");
createCookie("adSeen", "1", 1000);
}
});
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;
}
供参考,请参阅下面的小提琴:
https://jsfiddle.net/aman_chhabra/fguq4hnd/1/
希望有所帮助。