Diferencia entre revisiones de «MediaWiki:Filtros.js»

De Diccionario Interactivo Ceán Bermúdez
Ir a la navegación Ir a la búsqueda
Línea 7: Línea 7:
 
         var filter = $(this).val();         
 
         var filter = $(this).val();         
 
         if(filter) {
 
         if(filter) {
           $(list).find(":not(:Contains(" + filter + "))").slideUp(function(){
+
           $(list).find("li:not(:Contains(" + filter + "))").slideUp(function(){
 
               if($(this).closest('.mw-category-group').find('li:visible').length == 0){  
 
               if($(this).closest('.mw-category-group').find('li:visible').length == 0){  
 
                 if($(this).closest('.mw-category-group').is(':visible')) {  
 
                 if($(this).closest('.mw-category-group').is(':visible')) {  

Revisión del 11:36 22 oct 2020

jQuery(document).ready(function($){
	
	function listFilter(input, list) { 
    var sc = true;
    $(input)
      .change( function () {
        var filter = $(this).val();        
        if(filter) {
          $(list).find("li:not(:Contains(" + filter + "))").slideUp(function(){
              if($(this).closest('.mw-category-group').find('li:visible').length == 0){ 
                if($(this).closest('.mw-category-group').is(':visible')) { 
                  $(this).closest('.mw-category-group').slideUp();                
                }
              } else {
                if(!$(this).closest('.mw-category-group').is(':visible')) {
                  $(this).closest('.mw-category-group').slideDown();
                }
              }            
          });

          $(list).find("li:Contains(" + filter + ")").slideDown(function(){
            if(!$(this).closest('.mw-category-group').is(':visible')) {
              $(this).closest('.mw-category-group').slideDown();            
            }
          });
          

         
               
          
          
          
        } else {
          $(list).find("li").slideDown();
          $('.mw-category-group').slideDown();
        }
        return false;
      })
    .keyup( function () { 
        $(this).change();
         if(sc) {$("html, body").animate({ scrollTop: $(".filtro").offset().top - 80 }, 500);sc=false;}
    });
  }
  
  if($('.mw-category').length > 0){
  	var filtro = $('<div class="filtro"><input type="text" id="filtro" /></div>');
  	$('.mw-category').prepend(filtro);
	listFilter($('#filtro'),$('.mw-category-group li '));	
  }
  
  
});