Para todos aquellos que en su movie
quieran o tengan que salir de flash hacia una html, y luego regresar
a donde salieron en flash o a alguna label
específica ( i.e. menu principal saltándose la intro);
Este truco es algo sencillo y consiste básicamente en tres
partes.
1.La página principal con contenido flash ( html y swf )
2.La página html a la cual sale flash.
3.La página de reingreso a flash a una escena/label específica.
( html con javascript y el mismo swf )
Las partes uno y dos son de uso común por lo que no se enfatizarán.
la metodología sería la siguiente, tenemos una movie
*.swf en un html digamos que se llama index.html, en cierto momento
tenemos que abandonar flash para ir a una página en html,
y luego para regresar a flash envez de hacer el link a index.html,
se lo hacemos a una página que contiene instrucciones que
le indican a flash que se vaya a dereminada label en la movie.
Cómo hacerlo.
Opción uno
Paso1.publica tu movie flash y renombra el archivo html ejemplo
index2.html esto para que a la hora de publicar la página
normal no sobreescriba la que tiene la función javascript,
a la hora de publicar, además en publish settings (File>Publish
Settigns o Shift + F12 ) en la pestaña de Html, debes poner
el check box de paused at start, para que flash espere a que le
demos la indicación de correr con javascript.
debes asegurate que las etiquetas object y embed estén algo
parecido a esto( las más importantes en negrilla):
<object
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#
version=4,0,2,0"
id=tu_movie
width=100%
height=100%>
<param name=movie value="tu_movie.swf">
<param name=play value=false>
<param name=loop value=false>
<param name=quality value=high>
<param name=scale value=exactfit>
<param name=bgcolor value=#000066>
<embed
name= "tu_movie"
src="tu_movie.swf"
play="false"
loop="false"
quality="high"
scale="exactfit"
bgcolor="#000066"
width=100%
height=100%
swliveconnect=true
type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash">
</embed>
</object>
Paso 2.en la cabecera de tu archivo antes de la etiqueta
</head> coloca el siguiente código:
<script language="JavaScript">
<!--
var moviename = "tu_movie";
function movieobject(moviename)
{
//IE and Netscape se refieieren al objeto pelicula en forma diferente.
//esta funcion devuelva la sintaxis apropiada dependiendo del buscador
//gracias a moock de moock.org por el codigo
if (navigator.appName.indexOf ("Microsoft") !=-1)
{
return window[moviename] }
else
{
return document[moviename]
}
}
function play_movie()
{
movieobject(moviename).TGotoLabel("_level0/","tu_label");
movieobject(moviename).Play();
}
//-->
</script>
cambia tu_movie por el nombre de tu movie (id=tu_movie,
name= "tu_movie" y tu_movie deben
ser iguales)
cambia tu_label por el nombre del label al que quieres que flash
vaya.
Paso 3. Coloca la siguiente línea entre la etiqueta
<body ONLOAD="play_movie()" , esto hará que cuando la
página se abra busque la función play_movie y ejecute
el código.( hará que flash brinque al label.)
Paso 4. Publica la página flash "normal"
como lo haces regularmente.
Opción 2.
baja el archivo zip el cual contine la plantilla con las configuraciónes
apropiadas, guárdala en la carpeta html de tu programa flash
( ejemplo : C:\Program Files\Macromedia\Flash 4\HTML), en publish
settings en la pestaña html, selecciona Goto Label de la
lista de plantillas, has el checkbox de paused at start y busca
la línea:
movieobject(moviename).TGotoLabel("_level0/","tu_label");
cambias tu_label por el nombre de tu etiqueta y listo.
Nota:
si envez de vaya y corra ( goto and play) se requiere vaya y quédese
( go to and stop) cambiar la línea
movieobject(moviename).Play();
por
movieobject(moviename).StopPlay();
|