Задать вопрос
@Raneto4ka

Почему при выводе результата поиска отображается сообщение, что результатов нет?

Реализую поиск картинок через сервис бесплатных картинок.
Поиск запускается автоматически при вводе текста в строку.
Если результатов нет, то выводится сообщение, мол попробуйте снова (Try again!).
Так вот это сообщение иногда ещё и появляется если картинки найдены.
Не могу уловить причину: ошибка то есть, то нет. Может кто сталкивался?

https://codepen.io/Raneto4ka/pen/LMrqwv

Например: пишу слово "reflex" и ставлю после него пробел. После поиска отображаются и картинки и это сообщение под ними.
Если пробел стереть, то сообщение пропадает, если снова поставить пробел после слова, то сообщения снова нет. Если стереть и написать снова сразу с пробелом в конце, то снова увидим и картинки и сообщение.
Умоляю, помогите. Всю голову себе сломала с этим.

if(parseInt(response.totalHits) > 0) {
           $(".search-image__empty").fadeOut();   
          }
          else {
           setTimeout(function(){
            $(".search-image__empty").fadeIn();  
           }, 1100)            
          }
  • Вопрос задан
  • 76 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Уберите setTimeout. Из-за него с запозданием отображается сообщение, соответствующее одному из предыдущих результатов поиска, когда ничего найдено не было: запрос - ничего не найдено - setTimeout на показ сообщения об отсутствии результатов - запрос - результаты есть, они отображаются - показ сообщения об отсутствии результатов.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы