我试图跳过ajax请求(多池):
function doRequest(next) {
if (ajaxOpts.ajaxRequestType == "bla") {
console.log("next");
$.Deferred().reject().then(next, next);
} else {
jqXHR = $.ajax(ajaxOpts)
.done(dfd.resolve)
.fail(dfd.reject)
.then(next, next);
}
}
但是$.Deferred().reject().then(next, next);
似乎没有调用下一个函数。难道我做错了什么?
编辑:下一个功能似乎是:
function () {
jQuery.dequeue( elem, type );
}
答案 0 :(得分:0)
您使用的延迟不正确,请参阅jQuery网站上的示例: http://learn.jquery.com/code-organization/deferreds/examples/
或者看到这个小提琴:http://jsfiddle.net/mbMQz/1/
x = jQuery.Deferred(function(defer){
defer.reject();
}).then(function(){ alert('1') }, function(){ alert('2') });