我有这个代码,它运行一次然后停止。我希望它每十秒运行一次,我知道setinterval会循环代码,但由于某种原因它无法运行?
<script>
$(document).ready(setInterval(function(){
$("#club_color1 a").animate({color: '#000000'}, 1000);
$("#club_color2 a").animate({color: '#000000'}, 1000);
$("#club_color1 a").animate({color: '#FFFFFF'}, 1000);
$("#club_color2 a").animate({color: '#FFFFFF'}, 1000);
}),10000);
</script>
答案 0 :(得分:6)
我认为最后一行需要
},10000));
答案 1 :(得分:0)
使用回叫功能。所以它一个接一个地执行。
$(document).ready(setInterval(function(){
$("#club_color1 a").animate({color: '#000000'}, 1000,function() {
$("#club_color2 a").animate({color: '#000000'}, 1000,function() {
$("#club_color1 a").animate({color: '#FFFFFF'}, 1000,function() {
$("#club_color2 a").animate({color: '#FFFFFF'}, 1000);
});
});
});
},1000);
答案 2 :(得分:0)
我注意到一件事:
您忘记了$.ready()
的匿名功能,所以这样做:
<script>
$(document).ready(function()
setInterval(function(){
$("#club_color1 a").animate({color: '#000000'}, 1000);
$("#club_color2 a").animate({color: '#000000'}, 1000);
$("#club_color1 a").animate({color: '#FFFFFF'}, 1000);
$("#club_color2 a").animate({color: '#FFFFFF'}, 1000);
},10000);
});
</script>
你可以递归:
$(document.ready(function() {
animate();
});
function animate() {
$("#club_color1 a").animate({color: '#000000'}, 1000, animate);
$("#club_color2 a").animate({color: '#000000'}, 1000, animate);
$("#club_color1 a").animate({color: '#FFFFFF'}, 1000, animate);
$("#club_color2 a").animate({color: '#FFFFFF'}, 1000, animate);
}
只需在函数中添加这些动画,然后将该函数的名称添加为每个$.animate()
的最后一个参数,然后在文档准备就绪时调用animate()
函数。
答案 3 :(得分:0)
最简单的是:
function doMyAnimations()
{
$("#club_color1 a").animate({color: '#000000'}, 1000);
$("#club_color2 a").animate({color: '#000000'}, 1000);
$("#club_color1 a").animate({color: '#FFFFFF'}, 1000);
$("#club_color2 a").animate({color: '#FFFFFF'}, 1000);
setTimeout(doMyAnimations,10000);
}
然后在身体负荷上调用一次:
setTimeout(doMyAnimations,10000);