使用setInterval()来重复执行动画,会因为动画执行过程的时候,setInterval()的时间依然是在走的,所以会导致动画的调用时间不理想,因此只能使用递归来重复执行动画。
// 首页LOGO渐显 $(function(){ var t=$(‘#home_main img‘); setTimeout(function(){ //首次执行动画间隔0.5秒 (function am(){ //创建动画函数立即执行 t.animate({"opacity":1},1200,function(){ t.animate({"opacity":0.2},1200,am); //递归重复执行动画(jquery实现动画应该是执行完后就会销毁之前的动画,这里只是不断的创建执行而已,不能算是真正的递归) }); })(); },500); });
时间: 2024-10-25 05:02:45