Создание css-загрузчика для ajax-поиска, чтобы оставаться дольше

#jquery #html #css #ajax

#jquery #HTML #css #ajax

Вопрос:

У меня есть функция поиска ajax, и я пытаюсь добавить загрузчик во время загрузки результатов. Это функция

 function search(){
      var title=$("#search").val();

          if(title!=""){
             $("#result").html("<div class="loader09"></div>");
             $.ajax({
                      type:"post",
                      url:"search.php",
                      data:"title=" title,
                      success:function(data){
                         $("#result").html(data);
                         $("#search").val("");
                    }
              });
       }   
}
  

Возможно ли сделать так, чтобы этот загрузчик $("#result").html("<div class="loader09"></div>"); отображался дольше, чем это необходимо? Я имею в виду, что в настоящее время он появляется на 1 секунду, потому что поиск выполняется очень быстро. Я хочу остаться как минимум на 3-4 секунды.

Комментарии:

1. Не могли бы вы объяснить, почему вы хотели бы замедлить реакцию пользователей? Это кажется нелогичным и вызывает беспокойство по поводу удобства использования.

2. Потому что мне это не нравится так быстро, и я хочу немного замедлить страницу

Ответ №1:

Как насчет:

 success:function(data){
    setTimeout(function(data){ 
        $("#result").html(data);
        $("#search").val(""); 
    }, 3000);  <-- 3 second delay
}
  

или:

 function delayedResponse(data) {
    setTimeout(function(data){ 
        $("#result").html(data);
        $("#search").val(""); 
    }, 3000);  <-- 3 second delay
}
  

с:

 success:function(data){
    delayedResponse(data);
}
  

Комментарии:

1. Спасибо, но при этом ничего не загружается. Просто значок загрузчика и никогда не показывать никакого результата. В консоли также нет ошибок.

2. Да, ничего в консоли.

3. Все то же самое.. он показывает результаты за <1 секунду и скрывает загрузчик.