Flash en ventana completa

  • 16/11/2007
  • 1:33 am
  • unijimpe

El presente es una guía para mostrar archivos flash que se muestren a ventana completa o al 100% de la ventana, este tip lo encontré en Flash Embed Tip: Minimum width and height for liquid layouts y lo comparto con ustedes.

La idea inicial para insertar un flash en ventana completa es poner el ancho y alto al 100%, pero tiene un problema y es que al hacer esto ya no se muestran los scrolls y si la película es mas grande que la pantalla no se podrá ver la parte que excede la pantalla.

Insertando SWF al 100%
El primer paso es insertar el SWF en nuestro html, esto lo hacemos utilizando SWFObject, esto lo hacemos en el siguiente código donde debe notarse que asignamos el alto y el ancho al 100%.

HTML:
  1. <div id="main">Main Movie</div>
  2. <script type="text/javascript">
  3. var so = new SWFObject("my.swf","swf","100%","100%","8","#000");
  4. so.write("main");
  5. </script>

Lo siguiente es detectar cuando la ventana tiene las dimensiones mínimas del swf original, en cuyo caso asignamos los valores de ancho y alto al valor mínimo. Para ello creamos una función en Javascript llamada adjustSWF. Para nuestro ejemplo supongamos que las dimensiones originales de nuestro flash son 800 x 600 pixels. Entonces la función adjustSWF tendría la forma:

JavaScript:
  1. function adjustSWF() {
  2.     if (document.body.clientWidth <= 800) {
  3.         document.getElementById("swf").style.width= '800px';
  4.     } else {
  5.         document.getElementById("swf").style.width= '100%';
  6.     }
  7.     if (document.body.clientHeight <= 600) {
  8.         document.getElementById("swf").style.height = '600px';
  9.     } else {
  10.         document.getElementById("swf").style.height = '100%';
  11.     }
  12. }

Finalmente llamamos a esta función al momento que se carga la página y también cuando se redimensiona, esto lo hacemos llamando a los eventos onLoad y onResize del tag BODY de la siguiente forma:

HTML:
  1. <body onLoad="adjustSWF();" onResize="adjustSWF();">

Uniendo todo el código obtenemos nuestro flash a ventana completa. Pueden ver un ejemplo funcionando en: http://samples.unijimpe.net/swffull/. Como ven, sencillo y funciona en Firefox, Internet Explorer y Safari. Con esto podremos incluir SWFs de forma que se muestren en toda la pantalla de forma sencilla.

Posts Relacionados

Total de Comentarios: 4

Publicidad
20/11/2007
12:55 am

[...] encuentro en “unijimpe.net” un muy buen tutorial para poner los archivos flash al 100% en la ventana. El tutorial esta en [...]

28/11/2007
11:31 am

buena info
saludos

burbuja
05/08/2008
11:21 am

hice todo el procedimiento pero no me funciona, me marca un error de javascript

08/08/2008
1:23 pm

hice la prueba pero no me funciona, podrias poner el codigo fuente de archivo de ejemplo?

Enviar Comentario

(*)

(*)