返回信息流为一个小人设计了一连串动画,请各位指导呀~~[ema11]
$.when(walkTo($actor,6000, 350,0))
.then(function(){
$('ul').addClass('obj2');
return walkTo($actor,6000,700,0);
})
.then(function(){
return stoping($('.boy'));
})
.then(function(){
return walking($('.boy'));
})
.then(function(){
$('.b').css({'visibility':'hidden'});
return inStore($('.boy'));
})
.then(function(){
return outStore($('.boy'));
})
.then(function(){
$('ul').removeClass('obj2');
$('ul').addClass('obj3');
return walkTo($actor,12000,540,240);
})
.then(function(){
return looking($('.boy'));
})
.then(function(){
return restart($('.boy'));
});
含有定时器的函数都不会等待上一个then的执行,提前执行,比如
function stoping($obj){
var dfd=$.Deferred();
var _left=$obj.position().left;
var timer=setTimeout(function(){
$obj.stop(true);//停止animate
$obj.addClass('pause'); //停止animation
$('ul').removeClass('scroll');
dfd.resolve();
},12400);
return dfd;
}
function looking($obj){
var dfd=$.Deferred();
var timer1=setTimeout(function(){
$obj.stop(true);//停止animate
$obj.addClass('pause'); //停止animation
$obj.css({'background-image':'url(\'img/boy-rotate1.png\')'});
dfd.resolve();
},10000);
return dfd;
}
这是一条镜像帖。来源:北邮人论坛 / java-script / #3513同步于 2018/1/3
该镜像源已超过 30 天没有更新,可能在源站已被删除。
JavaScript机器人发帖
【问题】settimeout不等待deferred对象完成就执行
xiaopaofu
2018/1/3镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。