实例当用户点击按钮时,受理延迟对象,触发一系列回调函数 <button>Go</button><p>准备...</p><script>$(function () { function fn1() { $( "p" ).append( " 1 " ); } function fn2() { $( "p" ).append( " 2 " ); } function fn3( n ) { $( "p" ).append( n + " 3 " + n ); } var dfd = $.Deferred(); dfd .done( [ fn1, fn2 ], fn3, [ fn2, fn1 ] ) .done(function( n ) { $( "p" ).append( n + " 已完成。" ); }); $( "button" ).on( "click", function() { dfd.resolve( "和" ); });})</script> 定义和用法deferred.done() 函数当Deferred(延迟)对象被受理时,调用添加的处理程序。 提示:该方法接受一个或者多个参数。deferred.done() 返回的是一个 Deferred 对象,可以连接其他的延迟对象方法,包括额外的 .done() 方法。当Deferred 对象得到解决时,回调函数按它们被添加时的顺序执行,并且可以作为参数传递给如下的方法使用:resolve,resolveWith。 语法deferred.done( doneCallbacks [, doneCallbacks ] )
参数 | 描述 | doneCallbacks | Function类型 一个函数或者函数数组,当Deferred(延迟)对象得到解决时被调用 | doneCallbacks | 可选。Function类型 一个函数或者函数数组,当Deferred(延迟)对象得到解决时被调用 |
下载地址: jQuery deferred.always() 方法 jQuery deferred.fail() 方法 |