Это сбой, потому что уже скрытые <p>
элементы заканчивают свою анимацию немедленно и вызывают указанный вами обратный вызов complete
. Вы можете предотвратить это, замирая только :visible
один, так что те, кто уже скрыт, ничего не делают, изменив это:
$('p').fadeOut('fast', function() {
К этому:
$('p:visible').fadeOut('fast', function() {
Вы можете проверить обновленную версию здесь .