Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/07/2015, 17:55
ljbautista
 
Fecha de Ingreso: junio-2010
Ubicación: Puebla, Pue.
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Como mostra un preloader mientras carga una pagina.

Hola amigos, pues tengo una pagina que realiza varias consultas a mi bd, y después los va mostrando en un tabla, el asunto es que por razonas ajenas mientras carga toda la info en un tabla html tarda unos segundos este proceso.

Quisiera poder mostrar un preloader (que no se si así se le llame en realidad) o bloquear la interfaz mientras termina de cargar los datos a mi tabla pero npo he podido conseguirlo.

1o Lo intente tratando de mostrar un gif pero al entrar a la pagina primero carga la tabla y despues muestra el gif:

Código Javascript:
Ver original
  1. <style type="text/css">
  2.  
  3.   #pre-load-web {width:100%;position:absolute;background:#92def8;left:0px;top:0px;z-index:100000}
  4.   #pre-load-web #imagen-load{left:50%;margin-left:-30px;position:absolute}
  5. </style>
  6.  
  7. <script>
  8.         $(document).ready(function(){
  9.  
  10.         $("body").css({"overflow-y":"hidden"});
  11.         var alto=$(window).height();
  12.         $("body").append("<div id='pre-load-web'><div id='imagen-load'><img src='http://preloaders.net/preloaders/359/Filling%20circles.gif'  /><br />Cargando...</div>");
  13.         $("#pre-load-web").css({height:alto+"px"});
  14.         $("#imagen-load").css({"margin-top":(alto/2)-30+"px"});
  15.         })
  16.  
  17.         $(window).load(function(){
  18.            $("#pre-load-web").fadeOut(1000,function()
  19.            {
  20.                //eliminamos la capa de precarga
  21.                $(this).remove();
  22.                //permitimos scroll
  23.                $("body").css({"overflow-y":"auto"});
  24.  
  25.            });        
  26.         })
  27. </script>

2o con un plugin jQuery BlockUI:
Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.    
  3.         $.blockUI();
  4.         $('.blockOverlay').attr('title','Click to unblock').click($.unblockUI);
  5. }

Pero lo mismo primero se ve como se ve cargando el contenido de la tabla.

No se si haya algo que no este entendiendo bien o como hago para que al cargar la pagina lo primero que haga es mostrar un preloader?

De antemano gracias!