Javascript 使用jQuery cookie仅旋转图像一次
在页面加载时,我将图像旋转一段时间,并使用jQuery隐藏。但是,当我导航到其他页面并再次返回到第一个页面时,它会再次加载该图像。如何使旋转仅在加载第一页时发生 PS:我知道我必须使用cookies,但我无法正确地使用它。有人能帮忙吗 以下是旋转图像的代码:Javascript 使用jQuery cookie仅旋转图像一次,javascript,jquery,cookies,rotation,Javascript,Jquery,Cookies,Rotation,在页面加载时,我将图像旋转一段时间,并使用jQuery隐藏。但是,当我导航到其他页面并再次返回到第一个页面时,它会再次加载该图像。如何使旋转仅在加载第一页时发生 PS:我知道我必须使用cookies,但我无法正确地使用它。有人能帮忙吗 以下是旋转图像的代码: $(document).ready(function(){ var angle = 0; setInterval(function(){ angle+=3; $("#loading").rot
$(document).ready(function(){
var angle = 0;
setInterval(function(){
angle+=3;
$("#loading").rotate(angle);
}, 50);
});
我试图在旋转之前将一个污损cookie设置为true,然后对其进行更改,但它不起作用
$.cookie('visited', true);
$(document).ready(function(){
if( $.cookie('visited') == true){
var angle = 0;
setInterval(function(){
angle+=3;
$("#loading").rotate(angle);
},50);
$.cookie('visited', false);
}
});
我想知道这是否与smth相矛盾:
$(document).ready(function(){
//Initial loading, after 3 seconds fadeout the loading and show the menu
$("#loading").delay(3000).fadeOut("slow");
$(".logo").delay(3500).fadeIn('slow');
$("footer, nav").delay(4000).fadeIn('slow');
});
在这里,我试图制作一种动画。徽标、页脚和导航用CSS隐藏,然后我淡入其中
我试过这个:
$(document).ready(function(){
if ($.cookie('hasSeenAnimation') == null){
var angle = 0;
setInterval(function(){
angle+=3;
$("#loading").rotate(angle);
},50);
//Initial Loading, after 3 seconds fadeout the Loading and show Menu
$("#loading").delay(3000).fadeOut("slow");
$(".logo").delay(3500).fadeIn('slow');
$("footer, nav").delay(4000).fadeIn('slow');
$.cookie('hasSeenAnimation','true');
}
});
但是现在,在第一次加载时,它会旋转…当我导航并返回时,它会显示旋转的图像,但会阻止旋转,因为它不会旋转。您每次在页面加载时都会重置cookie,请尝试
$(document).ready(function () {
if (!$.cookie('visited')) {
var angle = 0;
setInterval(function () {
angle += 3;
$("#loading").rotate(angle);
}, 50);
$.cookie('visited', true);
}
});
PoC:像这样的怎么样
$(document).ready(function(){
if( $.cookie('visited') != true){
var angle = 0;
setInterval(function(){
angle += 3;
$("#loading").rotate(angle);
},50);
$.cookie('visited', true);
}
});
好的,伙计们,谢谢你们的帮助。我只是写了一个else语句,设法做到了这一点 下面是代码,以防有人遇到同样的问题,注意这不是最佳答案,因为我是jQuery新手:
$(document).ready(function(){
if ($.cookie('hasSeenAnimation') == null){
var angle = 0;
setInterval(function(){
angle+=3;
$("#loading").rotate(angle);
},50);
//Initial Loading, after a 3 sec fadeout the loading and show the menu
$("#loading").delay(3000).fadeOut("slow");
$(".logo").delay(3500).fadeIn('slow');
$("footer, nav").delay(4000).fadeIn('slow');
$.cookie('hasSeenAnimation', 'true');
}
else{
$("#loading").hide();
$(".logo").delay(300).fadeIn('slow');
$("footer, nav").delay(600).fadeIn('slow');
}
});
Thnx回答:我试过了,但它甚至阻止了旋转。我正在检查另一个操作是否与此相矛盾…不,相同的问题…在第一次加载时会旋转,但当我导航并再次返回时,它会旋转到dbl check,您能否验证您是否删除了之前设置的cookie。清理你的cookies,然后再试一次。看这里,同样的问题似乎有一个公认的答案。不过,这个问题的关键是使用延迟,而不是设置间隔。我检查了它,我试着在第一次加载时它会旋转,当我导航并返回时它会阻止旋转,它只显示图像。我编辑代码。你可以检查一下