以下介绍一下jQuery中Deferred对象的使用:

1. 通过$.Deferred生成一个deferredObj对象;

2. deferredObj.done()指定操作成功时的回调函数;

3. deferredObj.fail()指定操作失败时的回调函数;

4. deferredObj.promise()没有参数时,作用为保持deferred对象的运行状态不变;接受参数时,作用为在参数对象上部署deferred接口;

5. deferredObj.resolve()手动改变deferredObj的运行状态为已经完成,从而立即触发done();

6. $.when()为多个操作指定回调函数;

7. deferredObj.then(),有的时候为了省事,将done和fail合在一起写,例如:$.when().then(success,failed)。第一个为done的回调函数,第二个为failed的回调函数,如果只有一个回调函数,则默认为done的回调函数;

8. deferredObj.reject()和deferredObj.resolve()正好相反,调用该函数则立即触发fail()方法;

9. deferredObj.always(),这个方法是用来指定回调函数的,它的作用是不管调用deferredObj.resolve()和deferredObj.reject()都将会调用该回调函数。

(待续。。。)

posted on 2015-01-08 10:34  边城愚者  阅读(247)  评论(0编辑  收藏  举报