[Функция] deferred.resolve()
Раздел "Deferred"
Метод выполняет объект deferred и вызывает одну из функций обратного вызова, указанных в методе done или методе then
args:аргументы, которые будут переданы в функцию обратного вызова, указанную в методе done или then
Использование метода deferred.resolve() позволяет отследить завершение javascript функций и jQuery методов, после чего выполнить функции обратного вызова.
Пример:
В следующем примере использованием метода deferred.resolve() отслеживается выполнение асинхронных функций, добавленных в пространство имён jQuery (jDefferedIn,jDefferedOut). На консоль будет выведено сообщение 'Обе функции завершены!'.
"jQuery"
$(document).ready(function () {
jQuery.fn.jDefferedIn = function() {
var dfd = $.Deferred();
$(this).fadeIn(2000, dfd.resolve);
return dfd.promise();
};
jQuery.fn.jDefferedOut = function() {
var dfd = $.Deferred();
$(this).fadeOut( 2000, dfd.resolve );
return dfd.promise();
};
$.when($('#result').jDefferedIn(), $('#result').jDefferedOut()).then(function() {
console.log('Обе функции завершены!')
});
});
Версия jQuery 1.4.2
Документ создан 2010-08-21