jQuery推迟了

我是jquery deferreds的新手。 这里有一个简单的例子 。

任何人都可以告诉我为什么在完成其他function之前触发完成function(“现在是我的时间”)?

这个例子中的人也创建了一个延迟对象并返回一个promise,我也是。
如何更改我的小例子才能在6秒后(超时后)触发完成function?

非常感谢提前
沃尔夫冈

您应该将函数传递给done()方法,而是立即调用console.log()并将其返回值传递给done() 。 你应该写:

 $.when(test()).done(function() { console.log("now it's my time"); }); 

代替:

 $.when(test()).done(console.log("now it's my time")); 

你会在这里找到一个更新的小提琴。