Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Agregar un cargando

Estas en el tema de Agregar un cargando en el foro de Frameworks JS en Foros del Web. Hola muchachos estoy trabajando con prototype y scripttacolous el tema es que quiero agregar a un form que envio el tipico mensaje de cargando mientras ...
  #1 (permalink)  
Antiguo 21/01/2011, 15:18
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Agregar un cargando

Hola muchachos estoy trabajando con prototype y scripttacolous el tema es que quiero agregar a un form que envio el tipico mensaje de cargando mientras se envian los datos?

en mi script tengo

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. <?php for ($i=101;$i<=130;$i++){?>
  3. function form<?php echo "$i";?>(){var params = Form.serialize($('formulario_<?php echo "$i";?>'));
  4. new Ajax.Updater('bodychange', 'basedatos_<?php echo "$i";?>.php', {asynchronous:true, parameters:params, evalScripts: true,
  5. onComplete: function(){
  6. if($('cfx')){/*Formulario Error*/
  7. new Effect.Pulsate('cfx', { pulses: 4, duration: 1.8, queue: {scope: 'cfxscope'}});  
  8. }
  9. if($('cfa')){/*Formulario Ok*/
  10. new Effect.Pulsate('cfa', { pulses: 4, duration: 1.8, queue: {scope: 'cfascope'}});    
  11. new Effect.Fade('cfa', { duration: 7.0, queue: {position: 'end', scope: 'cfascope'} });
  12. }
  13. }
  14. });}
  15. <?php } ?>
  16. </script>

si le agrego el onloading de esta forma :

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. <?php for ($i=101;$i<=130;$i++){?>
  3. function form<?php echo "$i";?>(){var params = Form.serialize($('formulario_<?php echo "$i";?>'));
  4. new Ajax.Updater('bodychange', 'basedatos_<?php echo "$i";?>.php', {asynchronous:true, parameters:params, onLoading: showLoad, evalScripts: true,
  5. onComplete: function(){
  6. if($('cfx')){/*Formulario Error*/
  7. new Effect.Pulsate('cfx', { pulses: 4, duration: 1.8, queue: {scope: 'cfxscope'}});  
  8. }
  9. if($('cfa')){/*Formulario Ok*/
  10. new Effect.Pulsate('cfa', { pulses: 4, duration: 1.8, queue: {scope: 'cfascope'}});    
  11. new Effect.Fade('cfa', { duration: 7.0, queue: {position: 'end', scope: 'cfascope'} });
  12. }
  13. }
  14. });}
  15. <?php } ?>
  16. function showLoad () {
  17. $('Capa_Formulario').style.display = 'none';
  18. $('Capa_Cargando').style.display = 'block';
  19. }
  20. </script>

El showload por alguna razon no me funciona queda cargando el contenido sin hacer nada mas... o sea queda en la Capa_Cargando y no me muestra la Capa_Formulario.

MI pregunta es , hay otra forma de hacer el preload? ya sea con el mismo prototype o con scriptacolous mientras me funcione yo ok.

Saludos.
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #2 (permalink)  
Antiguo 21/01/2011, 16:06
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Tema movido desde javascript
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 21/01/2011, 16:55
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Agregar un cargando

Mmmm, deberias en el onComplete, volver a cambiar los estilos de las capas,

Código Javascript:
Ver original
  1. ...
  2. onComplete: function(){
  3.   $('Capa_Formulario').style.display = 'block';
  4.   $('Capa_Cargando').style.display = 'none';
  5.   ...
  6. }

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #4 (permalink)  
Antiguo 24/01/2011, 07:37
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Agregar un cargando

Pues quede en las mismas por alguna razón no me muestra el formulario y queda la imagen preload pegada :/
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #5 (permalink)  
Antiguo 24/01/2011, 09:18
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Agregar un cargando

Según la documentación onLoading no esta implementado en todos los navegadores de forma consistente y deberías evitarlo, utiliza mejor onCreate:

Código Javascript:
Ver original
  1. ...
  2. new Ajax.Updater('bodychange', 'basedatos_<?php echo "$i";?>.php' {
  3.     asynchronous:true,
  4.     parameters:params,
  5.     evalScripts: true,
  6.     onCreate: function(){
  7.         toggleLoader(false);
  8.     },
  9.     onComplete: function(){
  10.         toggleLoader(true);
  11.         if($('cfx')){/*Formulario Error*/
  12.             new Effect.Pulsate('cfx', { pulses: 4, duration: 1.8, queue: {scope: 'cfxscope'}});  
  13.         }
  14.         if($('cfa')){/*Formulario Ok*/
  15.             new Effect.Pulsate('cfa', { pulses: 4, duration: 1.8, queue: {scope: 'cfascope'}});    
  16.             new Effect.Fade('cfa', { duration: 7.0, queue: {position: 'end', scope: 'cfascope'} });
  17.         }
  18.     }
  19. });
  20. ...
  21. function toggleLoader(show) {  
  22.     $('ContenidoFormulario')[show ? 'show' : 'hide']();
  23.     $('ContenidoCargando')[!show ? 'show' : 'hide']();
  24. }

Nota: ten en cuenta que en development puede ser tan rapido que ni siquiera veas el loader, en production al ser mas lento lo vas a ver.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #6 (permalink)  
Antiguo 24/01/2011, 13:36
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Agregar un cargando

mmmm intersante lo del onload con razón tenia problemas con google chrome, el tema ahora es que le doy click y pues no me ejecuta en la misma pagina me salta una nueva.
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #7 (permalink)  
Antiguo 24/01/2011, 13:59
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Agregar un cargando

Raro, yo lo probé en el ejemplo que pasaste en otro post y funciona ok, firebug no te muestra ningun error ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #8 (permalink)  
Antiguo 24/01/2011, 14:03
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Agregar un cargando

sep sorry masterpupet funciona correctamente tenia demas el onLoading: showLoad.
lo quite y anda bien, gracias por la rapidez y la ayuda saludos :)
__________________
Gokuh Salvo al mundo. PUNTO!!!!

Etiquetas: cargando
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:31.