Так что эта функция прекрасно работает в браузерах geko и webkit, но не в IE7. Я сломал свой мозг, пытаясь определить проблему. Что-нибудь для тебя выпало?
Основная предпосылка: вы передаете объект данных (в данном случае ответ от $ .getJSON jQuery), мы проверяем код ответа, устанавливаем класс уведомления, добавляем слой и показываем его пользователю. Затем выполните обратный процесс через определенный промежуток времени.
function userNotice(data){
// change class based on error code returned
var myClass = '';
if(data.code == 200){ myClass='success'; }
else if(data.code == 400){ myClass='error'; }
else{ myClass='notice'; }
// create message html, add to DOM, FadeIn
var myNotice = '<div id="notice" class="ajaxMsg '+myClass+'">'+data.msg+'</div>';
$("body").append(myNotice);
$("#notice").fadeIn('fast');
// fadeout and remove from DOM after delay
var t = setTimeout(function(){ $("#notice").fadeOut('slow',function(){ $(this).remove(); }); },5000);
}