|
|
|
Si tenemos una página que tarda mucho en cargar, por ejemplo porque tenemos una consulta a la base de datos muy grande, queda muy bien presentar un "cartelito" al usuario que le de información sobre lo que esta pasando. En nuestro caso pondremos un GIF con la frase "en proceso..." mientras no carga la página. Tenemos dos imágenes gifs enproceso.gif (gif animado) y vacio.gif (uno en blanco), mientras no se carga, mostramos el GIF animado y una vez cargada la sustituimos por el GIF vacio y mostramos la información.
<HTML> <HEAD><TITLE>Prueba</TITLE> </HEAD> <BODY> <center><IMG SRC=enproceso.gif name=enproceso></center> <?php flush(); // aqui iría el proceso pesado .... ?> <!-- ahora cambiamos la imagen --> <script> function SwitchImg() { //start var rem, keep=0, store, obj, switcher=new Array, history=document.Data; for (rem=0; rem < (SwitchImg.arguments.length-2); rem+=3) { store = SwitchImg.arguments[(navigator.appName == `Netscape`)?rem:rem+1]; if ((store.indexOf(`document.layers[`)==0 && document.layers==null) || (store.indexOf(`document.all[`)==0 && document.all==null)) store = `document`+store.substring(store.lastIndexOf(`.`),store.length); obj = eval(store); if (obj != null) { switcher[keep++] = obj; switcher[keep++] = (history==null || history[keep-1]!=obj)?obj.src:history[keep]; obj.src = SwitchImg.arguments[rem+2]; } } document.Data = switcher; } //end SwitchImg(`document.enproceso` ,`document.enproceso,`vacio.gif`); </script> <?php // aqui ya mostramos los datos que queramos ?>
|
|