Я работал над библиотекой компонентов для javascript и сам столкнулся с этой проблемой.У меня есть преимущество в том, что я могу бросить тонну javascript на проблему, но так как вы уже используете немного, подумайте о следующем изящно унизительном решении:
При удалении любого компонента / узла dom, добавьте класс под названием «удаление».
Затем в CSS вы можете определить свою анимацию, используя этот класс:
.someElement.removing {
-webkit-animation: fadeOut 500ms;
-moz-animation: fadeOut 500ms;
animation: fadeOut 500ms;
}
И вернуться в javascript, сразу после добавления «удаления»'class, вы должны быть в состоянии проверить свойство css' animation ', и если оно существует, то вы знаете, что можете подключить' animationEnd ', а если это не так, просто сразу удалите элемент.Я помню, как проверял это некоторое время назад, оно должно работать;Я посмотрю, смогу ли я выкопать пример кода.
Обновление: Я откопал эту технику и начал писать действительно классный плагин для jQuery, который позволяет вам использовать анимацию CSS3для элементов DOM, которые удаляются.Никакого дополнительного Javascript не требуется: http://www.github.com/arthur5005/jquery.motionnotion
Это очень экспериментально, используйте на свой страх и риск, но хотели бы получить некоторую помощь и обратную связь.:)