10

我最近一直在阅读有关promise([type] [,target])返回Promise对象的函数。

文档指出默认type值为fx

默认type是" fx",表示当被选元素的所有动画都完成后,返回的 Promise 被解析。

出于某种原因,我很难找到其他可用的类型。我假设其他类型可能是例如当使用或类似方法ajax将内容加载到集合中时得到解决的(请注意,我知道如何处理承诺,我只是举个例子)。load()load()

是否有一个列表指定所有可用类型?我正在考虑查看源代码以找出答案,但是我希望在某个地方有一个列表,除非fx是可以与此函数一起使用的唯一合理类型。

4

1 回答 1

9

该文档说明了这个type论点:

需要观察的队列类型。

默认情况下,所有动画函数都添加到fx队列中。但是使用.queue,您可以将函数“附加”到选定的元素,这些元素为了您选择的队列(可以定义)而运行。

因此,一旦调用了指定队列中的所有函数,promise 就会得到解决。虽然我还没有在实践中看到这一点。

例子:

$('div').queue('foo', [function(next) {
    setTimeout(next, 2000); // some delay
}, function(next) {
    console.log('Last function in queue');
    next();
}]).dequeue('foo');

$('div').promise('foo').done(function() {
    console.log('all done');
});

演示

于 2013-04-26T09:52:03.523 回答