Кажется, я наблюдаю хотя бы один случай, когда функция обратного вызова, переданная функции эффекта jQuery, будет выполняться несколько раз, если есть ошибка при ее выполнении.
Например, см. этот JS Fiddle, содержащий следующий код:
$('#awesome').fadeOut(400,function () {
log('fading out...');
dieInAFire();
});
log
добавляет все переданное ему в div... но dieInAFire
не существует. Скорее просто прекращение выполнения, однако, анонимная функция, как представляется, получает вызов снова и снова, о чем свидетельствует растущее число явлений "fading out..." в лог-div.
Является ли это ожидаемым поведением? Если да, то почему?