Paginación estilo Google

Paginación estilo Google

Estaba creando una aplicación y necesitaba paginar resultados, busqué algo similar a google y no encontré mucha información, modifique algunos ejemplos de la web y el resultado + ó - me dejo satisfecho o.0!

ver DEMO   Código



function paginar(actual, total, por_pagina, enlace, maxpags) {
  var  texto = '<div class="pagination" id="navePage"><ul>'; 
  var total_paginas = Math.ceil(total/por_pagina);
  var anterior = actual - 1;
  var posterior = actual + 1;
  var med = maxpags/2;
  var minimo = 0; 
  if( (actual + med) >= total_paginas) {
   minimo = Math.max(total_paginas - maxpags + 1,1);
  }
  else {
   minimo = ( (actual-med)>0 )? actual - med : 1; 
  }   
  var maximo = 0;  
  if (actual > 1) 
   texto += '<li><a href=?' + anterior + enlace + ' title="Back"><<</a></li>';
  maximo = Math.min(minimo + maxpags - 1, total_paginas);
  for (var i=minimo; i <= maximo; i++) {
   if(i == actual) {
    texto += '<li class="active"><a href="?="><b>' + actual + '</b></a></li>';
   }
   else {
    texto += '<li><a href=?'+ enlace + i + '>' + i +'</a></li>';
   }
  }
  if(actual < total_paginas ) 
   texto += '<li><a href=?' + enlace + posterior + ' title="Next">>></a></li>';
  texto += '</ul></div>';
  return texto;
 }

2 comentarios: