概述 deferred.always( alwaysCallbacks [, alwaysCallbacks ] )
返回值:Deferred Object
描述: 当Deferred(延迟)对象解决或拒绝时,调用添加处理程序。
参数可以是一个函数或一个函数的数组。当Deferred(延迟)得到解决或者拒绝时, alwaysCallbacks
始终都会被执行。由于的 deferred.always()
返回Deferred(延迟)对象,所以可以链接其它的Deferred(延迟)对象,包括额外的.always()
的方法。当Deferred(延迟)得到解决或者拒绝,回调将按他们顺序被执行,并且可以使用传递给如下方法的参数:resolve
, reject
, resolveWith
或rejectWith
。
注意: deferred.always()
方法接收了Deferred
对象.resolve()
或.reject()
使用的参数, 这往往是非常不同的。
为此, 最好的只用它的行为,而不去检查他的参数。
在大多数情况下,
使用显式 .done()
或 .fail()
处理程序,因为他们的参数都是已知的。
示例
jQuery.get()方法返回一个来自一个Deferred(延迟)对象的jqXHR对象,我们可以附加一个成功和错误使用deferred.always()方法的回调。
$.get("test.php").always( function() { alert("$.get completed with success or error callback arguments"); } );