2008-09-10 20 views
8

Normalmente, las aplicaciones Flash y Flex están incrustadas en HTML utilizando una combinación de etiquetas object y embed, o más comúnmente mediante JavaScript. Sin embargo, si se vincula directamente a un archivo SWF, se abrirá en la ventana del navegador y, sin mirar en la barra de direcciones, no se puede decir que no está incrustado en HTML con el tamaño establecido en 100% de ancho y alto.Enlazando directamente a un SWF, ¿cuáles son las desventajas?

Considerando la sobrecarga de HTML, CSS y JavaScript necesarios para incrustar una aplicación Flash o Flex que llena el 100% de la ventana del navegador, ¿cuáles son las desventajas de vincular directamente al archivo SWF? ¿Cuáles son las ventajas?

Puedo pensar en un lado positivo y tres aspectos negativos: no necesita las más de 100 líneas de HTML, JavaScript y CSS que son necesarias, pero no tiene detección de complemento, no verifica la versión y pierde su mejor SEO opción (mejora progresiva).

actualización no se colgó en las más de 100 líneas, simplemente significa que el la cantidad de código necesario para incrustar un archivo SWF es mucho (y me refiero incluyendo bibliotecas como SWFObject), y es sólo para mostrar el SWF, lo que se puede hacer sin una sola línea al vincularlo directamente.

Respuesta

7

Upsides para enlazar directamente al archivo SWF:

  • Acceso más rápido
  • Usted sabe que es una película flash, incluso antes de hacer clic en el enlace
  • Saltarse el html & archivos js (Usted no lo hará utilizar CSS para mostrar el 100% de todas formas la película flash)

Desventajas:

  • Tiene poco control sobre los valores predeterminados de las películas.
  • No puede usar colores de fondo personalizados, transparencia, etc.
  • No puede utilizar flashVars para enviar datos a la película desde el HTML
  • no pueden utilizar fscommand de la película a la página
  • proporciones
  • película nunca son los mismos que la relación de aspecto de la ventana del usuario
  • No puede compensar la incompetabilidad del navegador (Aparece el siguiente navegador y tiene problemas)
  • No SEO
  • Título de la página, malo si desea que las personas lo marquen como corresponde.
  • No hay información de complementos, enlaces de descarga, etc.
  • Si su SWF se conecta a fuentes de datos externas, es posible que tenga problemas de dominio cruzado.
  • Renombrar el archivo SWF también cambiará el nombre del enlace. Malo para versionar.

En resumen, para una aplicación complicada, utilice siempre el código HTML. Para una película de animación simple puede ir de cualquier manera.

0

¿Por qué necesitaría más de 100 líneas de código? Usar algo como swfobject reduce esto bastante (y de todos modos no se quiere hacer la detección de complementos, etc. a mano).

3

También pierde el control externo del SWF. Cuando está incrustado en HTML, puede usar javascript para comunicarse con el SWF. Si el archivo SWF se carga directamente, puede que no sea posible.

Tu cotización de más de 100 líneas me parece bastante alta. El HTML que genera FlashDevelop para incrustar un archivo SWF es de alrededor de 35 líneas, con un solo archivo swfobject.js. No debería necesitar tocar el archivo js, ​​ya lo sumo solo tendría que modificar el HTML de forma muy leve para hacer que haga lo que desea.

3

En mi experiencia, no todos los navegadores manejan esto correctamente. No estoy seguro de por qué (ni de qué navegadores), pero he enviado enlaces como este a clientes ocasionalmente y a menudo han vuelto confusos. Sospecho que su navegador les pide que descarguen el archivo en lugar de mostrarlo correctamente.

1

Una ventaja que puedo pensar es poder especificar los parámetros GET en la URL directa al SWF, que luego estará disponible en la aplicación Flash (a través del Application.application.parameters en Flex, no estoy seguro de cómo acceder a ellos en Flash CS3). Por supuesto, esto también puede lograrse por otros medios si tiene un contenedor HTML, pero de esta manera es menos trabajo.

-1

Adobe debería avergonzarse de sí mismo con la inserción estándar, que derrota al alumno de la convención sobre la configuración. Compruebe^swfobject (como se mencionó anteriormente) o swfin

0

Más ventajas:

  1. aspecto ligero primo que puede deshacerse de la cabecera con todas las barras de herramientas que parecen acumularse allí e incluso la barra de desplazamiento es innecesario. Esto mejora el impacto cuando intenta mostrar mucha acción en un breve flash.
  2. Lo más importante: lo tienes en una ventana que puedes arrastrar más grande o más pequeño y hacer que la película sea más grande y más pequeña. El reproductor cambiará el tamaño de la película para llenar la ventana que tienes. Esto es ideal para cosas como fotos grupales donde todos quieren agrandarse para encontrarse a sí mismos y a sus amigos. ¡He hecho esto para una producción Flash de un marco!

Desventajas: Como con ventanas emergentes en general, si está solicitando para los múltiples de un mismo sitio, y usted quiere diversas ventanas emergentes de tamaño, los navegadores tienden a anular simplemente el tamaño que pidan en window.open y reutilizar lo que sea que esté arriba. Debe cerrar cualquier ventana emergente abierta para que window.open haga una nueva creación. Se vuelve complicado y no he podido hacer que funcione en todas las páginas de un sitio web. ¡Cualquiera que haya hecho esto con éxito, pls publica cómo!

Cuestiones relacionadas