var dtd = $.Deferred(); // 新建一个 Deferred 对象
var wait = function(dtd){
var tasks = function(){
alert("执行完毕!");
dtd.resolve(); // 改变 Deferred 对象的执行状态
};
setTimeout(tasks,5000);
return dtd;
};
$.when(wait(dtd))
.done(function(){ alert("哈哈,成功了!"); })
.fail(function(){ alert("出错啦!"); });
dtd.resolve();
这段代码是怎样的执行顺序啊,求解释!我想的是先弹出“执行完毕”而后“哈哈,成功了!”而后“执行完毕”而后“哈哈,成功了”但是执行结果是:先弹出“哈哈,成功了!”而后弹出“执行完毕”