Я возился с функциями JJuery AJAX и пытался смоделировать, как реальный сервер будет задерживать сглаженные в противном случае запросы данных, которые я получаю на локальном хосте.
Итак, я написал код, похожий на этот:
$('form').submit(function (event) {
event.preventDefault();
$('#response').html('<p>Posting...</p>').fadeIn().delay(2000).queue(function () {
$.post (
'some_url.php',
{/*values here*/},
function (response) {
$('#response').html(response).delay(1000).fadeOut('slow');
//The line below is to reset the form element
$('input[type="text"], textarea').val(' ');
});
});
});
В основном я делаю так, что я задерживаю метод $ .post на 2 секунды, чтобы "Posting ..."сообщение может быть видно. Когда 2 секунды закончились, я хочу, чтобы текст был изменен с ответом, который я получил, оставался на месте в течение 1 секунды, и я хочу, чтобы он исчезал.
Первая задержка работает отлично, такжевызов Ajax работает отлично, проблема в том, что по какой-то причине вторая задержка не читается, а ответное сообщение, когда-то показанное, отказывается исчезать:)
Мой вопрос: почему это происходит и как я могу это исправить?