Где вы нашли упоминание об этой функции? Насколько мне известно, даже jQuery 1.5 отложенные объекты не могут быть так легко использованы с animate () .
К счастью, Дэн Хеберден написал очень хороший код , который делает синтаксис более понятным. Используя его решение, вы можете написать что-то вроде:
var $something = your$('#something');
$.when($something.animate({opacity: 0}, 500)).done(function() {
$something.hide();
});
Что, конечно, намного более многословно, чем просто передача обратного вызова на animate()
.
РЕДАКТИРОВАТЬ: jQuery 1.6 теперь реализует эту функцию изначально. Вы действительно можете сделать:
var $something = $('#something');
$.when($something.animate({opacity: 0}, 500)).done(function() {
$something.hide();
});
Это все еще излишне для простых анимаций, но весьма полезно, если вы уже используете отложенные объекты и хотите включить анимацию в поток запросов AJAX.