Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2010, 18:42
Avatar de Dude--
Dude--
 
Fecha de Ingreso: junio-2004
Ubicación: Sevilla - España
Mensajes: 197
Antigüedad: 19 años, 9 meses
Puntos: 4
Fundido en negro invertido

Fundido en negro: Cuando en videos la imagen deseparece llenandose todo de negro.

Como no se el nombre técnico de lo contrario pues lo he llamado invertido :P, pero vamos: Hacer que una capa con background negra se vaya haciendo transparente de forma progresiva y deje ver lo que hay detrás.

Al principio tenía un código bastante elegante, hasta que me enteré que en javascript la instrucción setTimeOut no detiene la ejecución del script sino que lanza la funcion llamada al tiempo indicado pero sigue interpretando el código que hay a continuación. Así que se me ocurrió lanzar varios eventos con un "delay" de tiempo progresivo entre ellos, tal que así:

Código Javascript:
Ver original
  1. function cerrar_ventana()
  2. {
  3.  /*Aquí va un código que hace cosas antes de cerrar la ventana, como borrar algún objeto, nada relevante para este ejemplo*/
  4.  
  5.   for (var i=80; i>0; i--)
  6.     {
  7.              var delay = (90 - i)/10;
  8.              var total = delay * 250;
  9.          setTimeout("fadeout("+i+")", total);
  10.     }
  11.    
  12. }
  13.  
  14. function fadeout(i)
  15. {
  16.   var marco = document.getElementById("marco_intro");
  17.  
  18.     if (i >= 10 && i < 100)
  19.         {
  20.             marco.style.opacity= '0.'+i;
  21.             marco.style.filter = 'alpha(opacity='+i+')';
  22.         }
  23.         if (i > 1 && i < 10)
  24.         {
  25.             marco.style.opacity= '0.1';
  26.             marco.style.filter = 'alpha(opacity='+i+')';
  27.             marco.style.visibility = "hidden"; //Esto es para que pueda clickearse en lo que hay debajo después de que la capa se haya hecho transparente.
  28.         }
  29. }

Esto funciona, llevando la opacidad desde un 80% a un 10%, pero me gustaría saber si hay alguna forma de hacerlo más limpiamente... pues me parece una auténtica "chapucilla".
__________________
"El camino empieza renunciando el control y volviéndose flexibles, como una brizna de paja en un huracán."

"Desconozco tanto... es excitante comenzar a nadar en este mar de dudas..."

Última edición por Dude--; 28/03/2010 a las 18:47