javascript - personalizar - ¿Cómo puedo cambiar el tamaño de un swf durante el tiempo de ejecución para que el navegador cree barras de desplazamiento html?
quitar scroll de un div (5)
Tengo un swf con cargas de texto en un Sprite que cambia de tamaño en función del contenido puesto. Sin embargo, me gustaría que las que son más largas que la página hagan que el navegador use sus barras de desplazamiento nativas en lugar de manejarlo en actionscript (muy muy parecido a http://www.nike.com/nikeskateboarding/v3/ ...)
Eché un vistazo a las cosas que hizo Nike, pero no fue capaz de llevarlo a cabo. ¿Algunas ideas?
A mitad de camino miré a swffit pero la altura (y el ancho a veces pero principalmente la altura) sería dinámico - swffit. Puedes declarar un maxHeight pero ese número estaría cambiando constantemente ... quizás podría encontrar la manera de configurarlo dinámicamente. Un gran lugar para comenzar, ¡gracias!
El truco es usar un poco de JavaScript para cambiar el tamaño del nodo Flash DOM:
function resizeFlash( h ) {
// "flash-node-id" is the ID of the embedded Flash movie
document.getElementById("flash-node-id").style.height = h + "px";
}
A lo que llamas desde dentro de la película Flash de esta manera:
ExternalInterface.call("resizeFlash", 400);
En realidad, no necesita tener el código JavaScript externamente, puede hacerlo todo desde Flash si lo desea:
ExternalInterface.call(
"function( id, h ) { document.getElementById(id).style.height = h + ''px''; }",
ExternalInterface.objectID,
400
);
La función anónima es solo para poder pasar el ID y la altura como parámetros en lugar de concatenarlos en la cadena de JavaScript.
Creo que el JavaScript es bastante multiplataforma. Si desea ver un ejemplo en vivo, mire este sitio: talkoftheweather.com . Puede parecer que no hace nada, pero cambia automáticamente el tamaño de la película Flash para acomodar todas las noticias (lo hace justo después de cargar las noticias, lo que se hace tan rápido que no se da cuenta de que está sucediendo). El cambio de tamaño obliga al navegador a mostrar una barra de desplazamiento vertical.
Lo que he estado usando principalmente, si es que es limitar lo pequeño que puede hacer un flash "fullbrowser", y para eso funciona muy bien. ¡Feliz hacking!
(y no olvides publicar tus hallazgos aquí, podría necesitarlo demasiado pronto;))
Nunca lo hice de esa manera, pero creo que Swffit podría lograrlo.