Действие 1: Включить Fade-In
Удалив переход из класса .loading.animated, ваша проблема с исчезновением будет исправлена.
Действие 2: включить 3-секундную задержку, чтобы исчезнуть
Чтобы добавить 3-секундную задержку, я просто помещаю removeClass в setTimeout:
setTimeout(function(){
$('.loading').removeClass("animated");
},3000);
Есливам нравится делать это в стиле jQuery, вы можете использовать это:
$('.loading').delay(3000).queue(function(next){
$(this).removeClass("animated");
next();
});
Действие 3: отключить эффект постепенного появления при загрузке страницы
Чтобы отключить постепенное добавлениев начале я применяю трюк, добавляя новый класс .firsttime к div, который отключил анимацию, а затем удаляю ее после вызова Ajax, поэтому все остальные вызовы будут появляться, кроме первого;)
Действие 4: Показать загрузку без задержки при запуске
Чтобы показать загрузку без задержки в первый раз, я добавил .animated class в ваш div в html, чтобы он отображался сразу и не ждал, покаJavaScript!
Действие 5: убрать задержку в 3 секунды при запуске
Чтобы не задерживать загрузку в первый раз, я добавил свойство в функцию doAjax, чтобы проверить, выполняется ли это в первый раз илинет, и если это так, то просто удалите класс .animated в противном случае, добавьте 3-секундную задержку, затем удалите класс.
Обновлен JsFiddle: http://jsfiddle.net/E2Srk/5/
Я надеюсь, что это исправит все вашивопросы: -)