Я написал следующую простую функцию, которая принимает два параметра, в основном из другой функции, возвращаемой с сервера с помощью json.
var timing = 10000;
function notificationOutput(type, message) {
console.log('output now!');
var note = $('.notification');
note.css('display', 'none');
if ( type == "success" ) { note.removeClass('warning').addClass('success'); }
if ( type == "warning" ) { note.removeClass('success').addClass('warning'); }
note.find('.message').html(message);
note.slideDown( function() {
note.delay(timing).slideUp();
});
}
Все, что он делает, это просто сдвигает панель вверху моей страницы, выводя сообщение (об успехе или предупреждении). Переменная timing
предназначена для того, чтобы панель уведомлений оставалась в течение 10 секунд. Поэтому, когда функция сработает, я хочу, чтобы бар был slideDown()
, удерживайте эту позицию в течение 10 секунд и затем slideUp()
снова.
Однако прямо сейчас, когда функция запускается, происходит странное время ожидания, пока не появится панель уведомлений. Это означает, что когда функция запускается, вывод console.log()
, который у меня там находится сейчас, немедленно регистрируется в моей JS-консоли, но функция slideDown () появляется на несколько секунд дольше! Почему это так?
Я хочу, чтобы slideDown()
происходил немедленно (одновременно с тем, как output now
регистрируется в консоли). Почему происходит задержка?
Спасибо за вашу помощь!