Estás en una Web y quieres dar click en un link o botón y por inercia, porque eres precavido o porque deseas conocer mejor tu destino, miras la status bar de tu navegador y... No hay nada . “Ningún viento es favorable para el que no sabe a donde va” Y no queremos que nuestros usuarios sientan que en nuestro sitio ningún viento les es favorable. Flash no tiene por defecto ninguna forma de cambiar el mensaje de la barra de estado, pero si podemos implementarlo nosotros.
En Firefox funcionará solamente si el usuario tiene activada la casilla “Permitir que scripts [Cambien el texto de la barra de estado]” en la configuración de JavaScript del explorador.
Así que solo algunos gozarán de este beneficio, pero no debe quedar en nosotros. Como hacerlo:
Un pequeño Javascript
La función ExternalInterface de Flash.
En la página donde estará nuestra película debemos colocar este script (Recordar que va dentro de <head>):
Código :
<script> function estatus(texto) { <!-- window.status =texto; //--> } </script>
Ahora tenemos que:
En nuestra pelicula de Flash, crear una capa (Layer) de Actionscript
Introducir este código en el keyframe donde tenemos nuestros botones/vinculos:
Nota Cuando el botón sea para Página Actual puede omitirse el parámetro Tipo de esta forma:
Código :
bt("bt6", "Inicio");
Ya que está como default en el switch, pero si quieres tener una mejor claridad al momento de leer tu código es recomendable no omitirlo. Decisión de cada quien.
Para que la función ExternalInterface funcione, debes de probar tu Web corriendo en un servidor. Ya sea subirla en un hosting o si tienes configurado tu PC como servidor.
excelente gracias, esto mes ervira, aunque debe de exitir alguna forma de hacerlo funcionar en firefox , la seguridad cuesta pero bueno Por:FeNtO
Que bueno que les gusta, hasta reduce el código que tienes que escribir para el botón
FeNto, ¿Te refieres a hacerlo funcionar sin que tengan activada esta casilla en la configuración?
Pues la verdad espero que siempre que se desarrollen sitios o aplicaciones Webs en Flash utilicen este o si tienen otra técnica, pero que siempre todos ofrezcan esta información de los links a los usuarios, si pueden por favor difundan este post por el bien de la humanidad y por tener brindar un motivo más para que acepten a Flash y un motivo menos para que lo desprecien.
Creo que la STATUSBAR tiene su razón de ser y hay que aprovecharla, ya no hay excusa. Por:Sr. QUHO
Es un muy buen ejemplo, no sólo de como cambiar la statusbar, sino del uso de ExternalInterface y Javascript en Flash. Desde Flash 8 no hay otra forma para comunicarse con Javascript sino usando ExternalInterface.
Buen tip QUHO (aunque tuve que editarle cosas ) Por:Freddie
Lástima que en FF esta por defecto desactivada la opción. Claro que es mejor por seguridad tener esto desactivado en el browser, no se que otros malintencionados cambien el Status bar para instalarnos spyware o virus.
De todas maneras, muy buen dato, y muy práctico Por:DanielSemper
Muy buen tip Sr. QUHO Por:XKlibur_blog
Si cambiamos el script por:
<script> function estatus(texto) { <!-- window.status =texto; } function titulo(cadena) { document.title = cadena; //--> } </script>
y tomamos por ejemplo el botón contacto y le añadimos:
Al pasar el cursor por encima, en la barra de estado nos mostrará el enlace, pero además cuando usemos ese botón, nos cambiara el titulo por el de Contacto. Por:Crop
Curiosamente lo de los titulos si que me ha funcionado, al menos en firefox e IExplorer, no se si por la configuración que tengo en los navegadores. Por:Crop
No necesita cargar import flash.external.*; Por:Angel Valiente_blog
Perdón, me he dejado sumar la variable destino en el string Por:Angel Valiente_blog
Sí, pensandolo, si es para llamar un javascript y pasarle parametros, desde flash, un getURL('javascript:alert('" str "');"), funciona perfectamente siendo "str", cualquier variable string... lo que no se puede hacer sin externalinterfase es recibir un "evento" o llamar una funcion DESDE javascript Por:Germán Wasem_blog
Para que la función ExternalInterface funcione, debes de probar tu Web corriendo en un servidor. Ya sea subirla en un hosting o si tienes configurado tu PC como servidor.