Pregunta

Por lo general, las aplicaciones Flash y Flex están integradas en HTML utilizando una combinación de object y embed etiquetas, o más comúnmente usando JavaScript.Sin embargo, si vincula directamente a un archivo SWF, se abrirá en la ventana del navegador y, sin mirar en la barra de direcciones, no podrá saber si no estaba incrustado en HTML con el tamaño establecido en 100% de ancho y alto.

Teniendo en cuenta la sobrecarga de HTML, CSS y JavaScript necesarios para incrustar una aplicación Flash o Flex que ocupe 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 una ventaja y tres desventajas:no necesita las más de 100 líneas de HTML, JavaScript y CSS que de otro modo se requieren, pero no tiene detección de complementos ni verificación de versiones y pierde su mejor opción de SEO (mejora progresiva).

Actualizar No se obsesione con las más de 100 líneas, simplemente quiero decir que la cantidad de código necesaria para incrustar un SWF es bastante (y me refiero a incluir bibliotecas como SWFObject), y es solo para mostrar el SWF, que puede se puede hacer sin una sola línea vinculándola directamente.

¿Fue útil?

Solución

Ventajas de vincular directamente a un archivo SWF:

  • Acceso más rápido
  • Sabes que es una película flash incluso antes de hacer clic en el enlace.
  • Saltar los archivos html y js (de todos modos, no usarás CSS para mostrar una película 100% flash)

Desventajas:

  • Tienes poco control sobre los valores predeterminados de las películas.
  • No puedes usar colores de fondo personalizados, transparencia, etc.
  • No puedes usar flashVars para enviar datos a la película desde HTML
  • No puedo usar fscommand de la película a la página
  • Las proporciones de la película nunca son las mismas que la relación de aspecto de la ventana del usuario.
  • No puedes compensar la incompatibilidad del navegador (aparece el próximo navegador nuevo y estás en problemas)
  • Sin SEO
  • Sin título de página, malo si desea que las personas marquen correctamente.
  • 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 entre dominios.
  • Cambiar el nombre del archivo SWF también cambiará el nombre del enlace.Malo para el versionado.

En resumen, para una aplicación complicada, utilice siempre HTML.Para una película de animación sencilla, puedes optar por cualquier opción.

Otros consejos

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

Su cotización de más de 100 líneas me parece bastante alta.El HTML que genera FlashDevelop para incrustar un SWF tiene solo alrededor de 35 líneas, con la inclusión de un único archivo swfobject.js.No debería necesitar tocar el archivo js y, como máximo, solo tendría que modificar el HTML en formas muy pequeñas para que haga lo que desea.

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

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

¿Por qué necesitarías más de 100 líneas de código?Usando algo como objeto swfo reduce esta cantidad bastante (y generalmente no desea realizar detección de complementos, etc.a mano de todos modos).

Más ventajas:

  1. Aspecto liviano porque puedes deshacerte del encabezado con todas las barras de herramientas que parecen acumularse allí e incluso la barra de desplazamiento no es necesaria.Esto mejora el impacto cuando intentas mostrar mucha acción en un breve instante.
  2. El gran problema:lo obtienes en una ventana que puedes arrastrar más grande o más pequeña y hacer que la película sea cada vez más grande.El reproductor cambiará el tamaño de la película para llenar la ventana que tienes.Esto es fantástico para cosas como fotos de grupo en las que todos quieren ampliarlas para encontrarse a sí mismos y a sus amigos.¡Hice esto para una producción Flash de un cuadro!

Desventajas:Al igual que con las ventanas emergentes en general, si solicita varias ventanas emergentes del mismo sitio y desea ventanas emergentes de diferentes tamaños, los navegadores tienden a simplemente anular el tamaño que solicita en window.open y reutilizar lo que esté activo.Debe cerrar cualquier ventana emergente abierta para que window.open realice una nueva creación.Se vuelve complicado y no he podido hacerlo funcionar en todas las páginas de un sitio web.Cualquiera que haya hecho esto con éxito, ¡por favor publique cómo!

Adobe debería avergonzarse de sí mismo con la inserción estándar, que anula el propósito de la convención sobre la configuración.Marque ^swfobject (como se mencionó anteriormente) o swfin

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top