Я бы, вероятно, оставил это явным, чтобы сохранить циклы.Каждый раз, когда вы анимируете, увеличивайте numberOfTotalAnimations
.В конце анимационного обратного вызова уменьшите его.Это если вам действительно нужна скорость здесь.В противном случае мне нравится предложение класса @ Ben.
ОБНОВЛЕНИЕ с примером, по запросу:
var numberOfTotalAnimations = 0;
numberOfTotalAnimations++;
$('#thing').animate({
opacity: 0.1
}, 2000, function() {
numberOfTotalAnimations--;
});
if (!numberOfTotalAnimations) {
console.log("Everything's quiet.");
} else {
console.log("Something's moving.");
}
Это не красиво, это подвержено ошибкам (в том, что выможно забыть увеличить или уменьшить счетчик) - но это быстро.