.promise( [type ] [, target ] )返回类型:Promise
描述: 返回一个应答对象,用来观察当某个类型的所有操作绑定到集合时,是否排队,是否已经完成。
-
增补版本:1.6.promise( [type ] [, target ] )
-
type (默认值:
fx
)类型:String需要被观察的队列的类型。 -
target类型:PlainObject应答方法必须附加到的对象。
-
.promise()
方法返回一个动态生成的应答对象,一旦绑定到此集合的所有的特定类型的操作,无论队列与否,都结束时,此应答对象就被解决了。
默认情况下,type
是"fx"
,它意味着当选中的元素的所有动画完成时,返回的应答对象已经被解决了。
解决和唯一的参数是调用.promise()
的集合。
如果提供了target
,.promise()
给它附加此方法,然后返回此对象,而不是创建一个新对象。这对在一个已经存在的对象上附加应答对象的行为很有用。
注意:返回的应答对象链接到针对一个元素存储在.data()
上的延迟对象上。因为.remove()
方法删除了元素的数据以及元素本身,所以它将阻止元素的任何未解决的应答对象被解决掉。如果有必要在元素的应答对象被解决之前从DOM树中删除一个元素,请使用.detach()
方法来代替,然后在解决了之后使用.removeData()
方法。
示例:
在集合上使用.promise()
,用无激活的动画返回一个已解决的应答对象:
1
2
3
4
5
6
|
|
当所有的动画已经结束(包括那些在动画回调函数初始化的函数以及后期添加的函数)时解决返回的应答对象。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
|
演示:
使用$.when()
语句解决返回的应答对象(.promise()
方法使你可以配合jQuery集合来做它):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
|