Evitar activación de Flash en IE

SWFObject es un script escrito en JavaScript que permite la inclusión de archivos Flash evitando la activación del control en Internet Explorer. Además, detecta si el usuario tiene una versión de Flash Player instalada y en caso contrario muestra contenido alternativo en HTML.

¿Cómo funciona?

Descargamos el archivo swfobject1-4.zip desde el sitio oficial del SWFObject (en inglés).

Dentro del .zip encontraremos un archivo con el nombre swfobject.js y algunos ejemplos de cómo funciona.

Para utilizarlo en nuestro sitio web, debemos incluir la llamada al archivo .js dentro de nuestra página:

<script type="text/javascript" src="swfobject.js"></script>

Y luego simplemente utilizamos el siguiente código donde queremos ubicar el archivo Flash:

<div id="flashcontent">
Aquí va el contenido en caso de que el usuario no disponga del plugin de Flash o el mismo sea una versión antigua no compatible con nuestra animación.
</div>

<script type="text/javascript">
var so = new SWFObject("archivo.swf", "nombre", "468", "60", "8", "#FF6600");
so.write("flashcontent");
</script>

Explicación

En esta línea debemos especificar los parámetros básicos de la inclusión del Flash:

var so = new SWFObject("nombre_del_archivo.swf", "nombre_de_la_pelicula", "width", "height", "version_de_flash_necesaria", "color_de_fondo");

  • nombre_del_archivo.swf: la ruta y nombre del archivo SWF (ej.: archivo.swf)
  • nombre_de_la_pelicula: el nombre de nuestra película Flash (ej.: nombre)
  • width: el ancho en pixels (ej.: 468)
  • height: el alto en pixels (ej.: 60)
  • versión: versión de Flash requerida (ej.: 8)
  • color_de_fondo: color de fondo de la película (ej.: #FF6600)

Atributos opcionales

El script, brinda la posibilidad de incorporar atributos opcionales dentro de la película.

Para agregarlos se utiliza la opción so.addParam:

<script type="text/javascript">
var so = new SWFObject("archivo.swf", "nombre", "468", "60", "8", "#FF6600");
so.addParam(“quality”, “low”);
so.addParam("play", "false");
so.addVariable(“nombre”, “fabian”);
so.write("flashcontent");
</script>

En el ejemplo definimos dos nuevos parámetros:

  • so.addParam("quality", "low"); Calidad de la película Flash como baja (low), en caso de no poner el parámetro, por defecto la calidad será alta (high).
  • so.addParam("play", "false"); Con valores true o false podemos especificar si la película comienza inmediatamente o no.

Existe una gran cantidad de parámetros opcionales al incluir un archivo Flash, en el sitio de Adobe hay un listado de todos estos.

También es posible pasar variables a las películas utilizando el parámetro Flashvars, en el ejemplo anterior observamos:

  • so.addVariable(“nombre", “fabian”); Pasamos el valor fabian dentro de la variable nombre.

Conclusión

Gracias a SWFObject podremos incluir en nuestro sitio web cualquier contenido Flash sin que el usuario tenga que activar el control al visitar el sitio con Internet Explorer, de esta manera evitamos el molesto recuadro que genera el navegador para que activemos la animación.

Además, el script detecta si poseemos el plugin de Flash instalado y de qué versión se trata. En caso de tener una versión no compatible con nuestra animación o directamente no poseer ninguna, podemos determinar qué contenido alternativo mostrar.

Y lo más importante, es que funciona perfectamente con una gran cantidad de navegadores y plataformas. En PC: IE5/5.5/6, Netscape 7/8, Firefox, Mozilla, y Opera. Y en Mac: IE5.2, Safari, Firefox, Netscape 6/7, Mozilla, y Opera 7.5+, y debería seguir funcionando bien en el futuro.

Deja un comentario