3.9.2 为多个耗时操作指定回调函数

3.9.2 为多个耗时操作指定回调函数

jQuery提供了一个jQuery.when(deferreds)工具方法,该方法可用于将多个Deferred对象组合成一个Deferred对象,从而允许开发者为多个Deferred对象同时指定耗时操作。
例如如下代码片段:

1
2
3
$when($.ajax({url: "pro"}),calPrime(1, 10000)) //①
.done(function(){})
.fail(function(){});

程序中的①号代码调用$.when()方法将ajaxcalPrime这两个耗时操作组合成一个Defered对象,从而允许开发者为它们整体指定回调函数:

  • $.ajax({url:"pro"})calPrime(1,10000)都执行成功时,将会自动激发done()方法添加的回调函数;
  • 只要任意一个执行失败,都将激发fail()方法添加的回调函数。