jQuery promise对象有哪些其他类型?

时间:2013-04-26 09:42:44

标签: javascript jquery

我最近读过关于返回promise([type] [,target])对象的Promise函数。

documentation表示默认typefx

  

默认情况下,type为“fx”,这意味着当所选元素的所有动画都已完成时,将解析返回的Promise。

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

是否有某个列表指定所有可用类型?我正在考虑looking at the source code找到它,但是我希望在某个地方有一个列表,除非fx是唯一可用于此函数的合理类型。

1 个答案:

答案 0 :(得分: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');
});

DEMO