js jquery 同步 回调 队列
var _slideFun=[ //把要执行的动画依次放入一个数组,并且按顺序执行,同步 function(){$('.one').delay(500).animate({top:'+=270px'},500,_takeOne);}, //先执行 function(){$('.two').delay(300).animate({top:'+=270px'},500,_takeOne);}, //再执行,以此类推 function(){$('.three').delay(6300).animate({top:'+=270px'},500,_takeOne);}, function(){$('.four').delay(300).animate({top:'+=270px'},500,_takeOne);}, function(){$('.five').delay(300).animate({top:'+=270px'},500,_takeOne);}, function(){$('.six').delay(300).animate({top:'+=270px'},500,_takeOne);}, function(){$('.seven').delay(300).animate({top:'+=270px'},500,function(){ alert('按序落体运动结束! Yeah!'); });} ]; $('#demo').queue('slideList',_slideFun); //将所有的动作都放入到名字为'slideList'的队伍中,但是并没执行。 var _takeOne=function(){ $('#demo').dequeue('slideList'); //删除队伍slideList中的最前面的函数,并执行。 }; _takeOne(); $(':button').click(function(){ $(this).val('刷新重试').attr('disabled',true).css('color','#ccc'); //停止也可用载入空数组实现$('#demo').queue('slideList',[]); $('#demo').clearQueue('slideList');//执行完函数后,就不执行后面函数了 });