0

我想知道是否可以将$.whenjquery 选择器或操作用作延迟,例如:

$.when(newTemplate.appendTo("#container")).done(function(){
    var rand = Math.floor((Math.random()*1000)+1);
    console.log(rand);
});

appendTo可能不是异步的,但读起来像

这是要等appendTo完结吗?

如果没有,在这种情况下,我怎样才能返回一个延迟的 obj appendTo,所以我会知道它是什么时候ready

4

1 回答 1

2

同步代码总是在下一行之前完成,所以你可以

newTemplate.appendTo("#container");
var rand = Math.floor((Math.random()*1000)+1);
console.log(rand);

您传递的$.when应该是实现Promise 接口并封装一些异步活动的对象。如果活动是同步的,您当然仍然可以这样做,但这会使代码复杂化很多,绝对没有任何好处。

于 2013-03-14T22:24:56.513 回答