Está usted en Indice > Programas > Diseño > Flash > Lecciones y Paso a Paso > Comunicación entre frames en Flash
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Comunicación entre frames en Flash

En este caso usaremos fscommand, para poder lograr que los archivos swf se comuniquen entre sí.

explicación:
el frameset esta compuesto por dos frames, el frame de la izquierda llamado menu y el de la derecha contenidos.
contenidos tiene al html llamado "target_movie.html" quien contiene en si el archivo "target_movie.swf"; menu, por su parte, tiene el archivo "main.html" y el swf "main.swf",
contenidos tiene labels llamadas: label1, label2 y label3 ( los nombres son indiferentes puedes usar los nombres para labels que gustes)

las acciones en los botones main.swf sería las siguientes :

On (Release)
FS Command ("init", "label1")
End On

lo que varía en los otros botones es el nombre del argumento ( vendría a ser el nombre del label al que le indicaremos a la película que se vaya, osea el label1, por label2 o label3); ahora explico porqué el menú main.html tiene el siguiente javascript que es el que hace que todo funcione:

<script language=JavaScript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Toma todos los mensajes FSCommand messages en la película Flash
function main_DoFSCommand(command, args) {
if ( command == "init" ) {
frameRef=parent.frames.contenidos; target_movieObj= InternetExplorer ? frameRef.target_movie :frameRef.document.target_movie;
target_movieObj.TGotoLabel("_level0",args);
}
}
// Gancho para Internet Explorer
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1)
{ document.write('<SCRIPT LANGUAGE=VBScript> n');
document.write('on error resume next n');
document.write('Sub main_FSCommand(ByVal command, ByVal args)n');
document.write(' call main_DoFSCommand(command, args)n');
document.write('end subn'); document.write('</SCRIPT> n');
}
//-->
</script>

trataré de explicarlo brevemente.
al presionar el boton le decimos al javascript que el comando es init, y el argumento labelx (ej label1).
el javascript tiene dicho que si el comando es init

if ( command == "init" )

se valla al frame contenidos

frameRef=parent.frames.contenidos;

y le decimos a cuál swf hacer target( o sea, al swf que está en target_movie.html)

target_movieObj= InternetExplorer ? frameRef.target_movie :frameRef.document.target_movie;



Usuarios que han visto este tema también han visto...

- Caricaturas con Flash: Sombreado
- Texto seleccionable en Flash
- Menu con efecto de easing en Flash
- Controlar el volumen de varios sonidos de modo independiente en Flash
- Television Estatica en Flash


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 05-09-2008 a las 21:30:19