Исходя из ваших комментариев, я предполагаю, что ваш код удаляет его сразу после запуска анимации.Анимация - это асинхронный процесс.Ваш код будет продолжать работать сразу после запуска анимации.Если вы затем удаляете объект после вызова hide()
, то вы удалите его до завершения анимации, и он «просто исчезнет», а не исчезнет медленно.
Чтобы это исправить, выВам понадобится событие завершения анимации, и вам нужно будет удалить его после завершения.
Вам понадобится что-то вроде этого:
$("#" + id).hide(2000, function() {
// remove it from the page here upon completion of the animation
});
Просто чтобы показать людям, что .hide (2000) функция работает просто отлично, вот рабочий пример: http://jsfiddle.net/jfriend00/XDQwU/.