¿Cómo puedo hacer que flash cs3 y actionscript envíen eventos a javascript?
-
09-06-2019 - |
Pregunta
Estoy usando Flash para reproducir un clip de película .flv en mi sitio, pero quiero que el envío .swf active un evento en mi javascript cuando comience a cargarse, comience a reproducirse y termine de reproducirse.
¿Cuál es la mejor manera de hacerlo en Flash CS3 usando Actionscript 3.0?
Solución
Debe utilizar la variable flash "allowScriptAccess" en el HTML.Probablemente desee utilizar "mismodominio" como tipo.Tenga en cuenta que si utiliza varios dominios, también deberá alojar un archivo especial en el servidor llamado 'crossdomain.xml' que permite dichas secuencias de comandos (el reproductor flash lo comprobará).Más información en http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14213&sliceId=2
La llamada es la parte fácil.:-) En el código Flash, utilizará la interfaz externa para realizar la llamada, como se documenta aquí:
Version corta:tu dices
ExternalInterface.call ("función javascript", "argumento")
Otros consejos
Una forma común de hacer esto es con el Interfaz externa clase, que puede utilizar para llamar a métodos JavaScript.
Primero defina sus métodos de JavaScript, por ejemplo:
<script language="JavaScript">
function startsPlaying()
{
// do something when the FLV starts playing
}
</script>
Luego modifique su ActionScript para llamar al método JavaScript en el momento adecuado:
// inform JavaScript that the FLV has started playing
ExternalInterface.call("startsPlaying");
Para obtener más información, consulte Flash CS3 relacionado. documentación.
si no quieres cargar
import flash.external.*;
así que también puedes hacer un
getUrl("javascript:startsPlaying();");