У меня просто была та же проблема, и, на мой взгляд, помеченный ответ на самом деле не удовлетворяет вопрос. Если указать это как
$("#myDiv").fadeOut(5000);
как указано, сам процесс затухания будет длиться 5 секунд, но не start через 5 секунд.
Так что я искал альтернативу, без необходимости включать другой плагин jQuery и т. Д. Самое простое решение, которое я нашел, было написать его следующим образом:
$("#myDiv").fadeTo(5000,1).fadeOut(1000);
Он использует эффект fadeTo и это как-то "хак". Я позволю fadeTo работать в течение 5 секунд, и пусть он исчезнет до 1 = 100% непрозрачности. Таким образом, пользователь не видит никаких изменений. После этого обычный вызов fadeOut с продолжительностью эффекта 1 секунда.
Полагаю, это решение довольно простое, поскольку оно не требует дополнительных плагинов и может быть записано в 1 строку.
Приветствие.
// EDIT:
Видимо, теперь есть возможность сделать что-то вроде этого:
$('#myDiv').delay(800).fadeOut(1000);
Вот еще несколько классных, полезных функций.