#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 секунду и скрывает загрузчик.