Исчезать в результатах поиска - PullRequest
0 голосов
/ 12 января 2020

Я хотел бы, чтобы результаты поиска из моей панели поиска появлялись. Я пытался добавить fadeIn () к функциям, но он все еще не работает. Если бы кто-нибудь мог оказать какую-либо помощь, это было бы очень полезно.

Я бы хотел, чтобы результаты поиска из моей панели поиска исчезли. Я попытался добавить fadeIn () к функциям, однако это все еще не работает. Если кто-то может оказать какую-либо помощь, она будет очень признательна.

header_search.liquid -

{%- if settings.basel_search_widget != 'disable' -%}
<div class="search-button basel-search-{{settings.basel_search_widget}}">
   <a href="#"><i class="fa fa-search"></i></a>
   <div class="basel-search-wrapper">
      <div class="basel-search-inner">
         <span class="basel-close-search">{{ 'general.search.close_search' | t }}</span>
         <form role="search" method="get" class="searchform{%- if settings.ajax_search %} basel-ajax-search{%- endif -%}" action="/search">
            <div>
               <label class="screen-reader-text"></label>
               <input type="text" placeholder="{{ 'general.search.placeholder' | t }}" value="{{ search.terms | escape }}" name="q" autocomplete="off">
               {%- if settings.only_search_products -%}<input type="hidden" name="type" value="product" />{%- endif -%}
               <button type="submit">{{ 'general.search.submit' | t }}</button>
            </div>
         </form>
         <div class="search-results-wrapper">
            <div class="basel-search-results">
              <div class="autocomplete-wrapper">

               <div class="autocomplete-suggestions" style="position: absolute; max-height: 300px; z-index: 9999;"></div>
     
                
            </div>
           </div>
         </div>
      </div>
   </div>
</div>
{%- endif -%}

функций. js -

  *-------------------------------------------------------------------------------------------------------------------------------------------
             * Ajax Search for products
             *-------------------------------------------------------------------------------------------------------------------------------------------
             */
             ajaxSearch: function() {
               if( theme.basel_settings.ajax_search == 'no' || theme.basel_settings.header_search_category == 'yes' ) return;
               var currentAjaxRequest = null,
                  search_form = $('form.basel-ajax-search');
               search_form.each(function() {
                  var input = $(this).find('input[name="q"]');
                  input.attr('autocomplete', 'off').bind('keyup', function() {
                    $('.autocomplete-suggestions').html('').hide();
                     var term = $(this).val(),
                        form = $(this).closest('form');
                     if (term.trim() == '') {
                         $('.autocomplete-suggestions').hide();
                     }else{
                        if( theme.basel_settings.ajax_search_product == 'yes' ) {
                           var searchURL = '/search?type=product&q=' + term;
                        } else {
                           var searchURL = '/search?q=' + term;
                        }
                        form.addClass('search-loading');
                        if (currentAjaxRequest != null) currentAjaxRequest.abort();
                        currentAjaxRequest = jQuery.get(searchURL + '&view=json', function(data) {
                           $('.autocomplete-suggestions').html(data);
                           setTimeout(function() {
                             form.removeClass('search-loading');    
                           }, 300);   
                        });
                       setTimeout(function() {
                         baselThemeModule.gl_currency();
                         $('.autocomplete-suggestions').fadeIn(2500);    
                       }, 1500); 
                     }
                  });
               });
               $('body').bind('click', function(){
                  $('.autocomplete-suggestions').hide();
                  $('form#searchform').removeClass('search-loading');
              });
            },
            categorysearch: function() {
                if( theme.basel_settings.header_search_category == 'no' ) return;
               var currentAjaxRequest = null,
                  categories_form = $('form.has-categories-dropdown'),
                  input = categories_form.find('input[name="q"]');
               input.attr('autocomplete', 'off').bind('keyup', function() {
                 $('.autocomplete-suggestions').html('').hide();
                   var term = input.val(), categories = $('#product_cat').val();
                  var searchURL = '/search/collections/'+categories+'?type=product&q=' + term;
                  if (term.trim() == '') {
                     $('.autocomplete-suggestions').hide();
                  }else{
                     categories_form.addClass('search-loading');
                     if (currentAjaxRequest != null) currentAjaxRequest.abort();
                     currentAjaxRequest = jQuery.get(searchURL + '&view=json', function(data) {
                        $('.autocomplete-suggestions').html(data);
                        setTimeout(function() {
                          categories_form.removeClass('search-loading');    
                        }, 300);   
                     });
                     setTimeout(function() {
                         baselThemeModule.gl_currency();
                         $('.autocomplete-suggestions').fadeIn(2500);    
                     }, 1500); 
                  }
               });
               $('body').bind('click', function(){
                  $('.autocomplete-suggestions').hide();
                  $('form#searchform').removeClass('search-loading');
               });
            },

            /**

1 Ответ

0 голосов
/ 15 января 2020

Если вы хотите, чтобы результаты постепенно исчезали, вам нужно назначить свойство display none целевому элементу (в вашем случае - поле подсказок для автозаполнения). Вот так:

.autocomplete-suggestions {
  display: none;
}

Это должно сработать. Вот рабочий пример

Подробнее о fadeIn здесь

...