2008-11-25 14 views
8

Hay muchos métodos para incrustar el flash en html, ¿cuál es la mejor? Los requisitos son:La mejor manera de incrustar el flash en html

  • Cross-browser apoyo
  • Soporte para contenido alternativo (si el flash no es compatible con el navegador)
  • posibilidad de exigir una versión específica del reproductor flash

He estado leyendo sobre SWFobject, ¿alguien lo ha usado/probado?

Respuesta

15

En un proyecto en el que trabajo utilizamos SWFobject que funciona como un amuleto, le permite buscar una versión específica y también mostrar contenido alternativo si flash no es compatible.

var fn = function() { 
    if(swfobject.hasFlashPlayerVersion("9.0.115")) 
    { 
     var att = { data:"flash.swf", width:"y", height:"x" }; 
     var par = { menu: "false", flashvars: "" }; 
     signUp = swfobject.createSWF(att, par); 
    } 
} 
swfobject.addDomLoadEvent(fn); 
2

Sí, usamos que para la detección de flash en nuestro sitio y funciona muy bien, evitando el problema que normalmente tiene que hacer clic para activar los controles de flash en IE. Lo hemos probado en muchos navegadores (diferentes versiones de IE, Firefox, Opera, Safari, Chrome) en múltiples sistemas operativos (Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008, Mac OSX, Linux) y una vez que ' lo tengo configurado correctamente, funciona perfectamente en todos.

4

Recomiendo usar flashembed. Tiene soporte para todo lo que necesita y más, sin ser tan complicado de usar. Originalmente fue desarrollado para incrustar flowplayer, que también puedo recomendar, pero funciona para cualquier archivo flash.

Un ejemplo de cómo lo uso:

flashembed("frontPageFlash", 
    { 
     src: "img/flash/FrontPage.swf", 
     width: "480", 
     height: "600", 
     bgcolor: "#ebebeb", 
     version: [9,0], 
     expressInstall:'scripts/expressinstall.swf' 
    },{ 
     head1: "<%= frontPageFlashHead1 %>", 
     head2: "<%= frontPageFlashHead2 %>", 
     pitch1: "<%= frontPageFlashPitch1 %>", 
     pitch2: "<%= frontPageFlashPitch2 %>" 
    } 
); 

Y donde está incrustada Yo simplemente puse:

<div id="frontPageFlash"></div> 
0

utilizo SWFObject mí mismo, en combinación con el <incrustar> y <objeto> etiquetas. La razón por la que incluyo las incrustaciones de HTML es que SWFObject y flashembed confían en Javascript para actualizar el DOM. No todos los usuarios que tienen instalado Flash también tienen Javascript habilitado.

Cuestiones relacionadas