When
Метод $.when()
Теперь на примере нашей подопытной странички покажу хитрый метод $.when()
:
$.when(
$("article h3").hide(3000),
$("article img").slideUp(1000),
$("article p").fadeTo(2000, 0.1)
).then(() =>
$("article").slideUp(500)
).done(() =>
console.info("done")
).catch(() =>
console.error("fail :(")
)
Поясню происходящее – все анимации стартуют одновременно, и когда все завершат свою работу будет вызвана функция, которую мы передаём в качестве аргумента в метод then()
(одна из двух, в зависимости от исхода происходящего).
Для обеспечения работы этой «магии» методы $.when()
, $.ajax()
и animate()
реализуют интерфейс Deferred. Поэтому мы можем использовать все те методы, с которыми знакомились в предыдущей главе.
Last updated