Como posso fazer para flash cs3, actionscript enviar eventos de javascript?
-
09-06-2019 - |
Pergunta
Eu estou usando o Flash jogar de um .flv movieclip no meu site, mas eu quero ter .swf enviar disparar um evento na minha javascript quando ele começar a carregar, começa brincando e acaba jogando.
Qual é a melhor maneira de fazer isso no Flash CS3, usando o Actionscript 3.0 ?
Solução
Você precisa usar o "allowScriptAccess" variável do flash em HTML.Provavelmente você vai querer usar "sameDomain" como o tipo.Observe que, se você vai de cross-domain, você também precisa hospedar um arquivo especial no servidor chamado 'crossdomain.xml" que permite que tais script (flash player) para verificar isso.Mais informações em http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14213&sliceId=2
A chamada é a parte fácil.:-) O código Flash, você vai usar o ExternalInterface para fazer a chamada, como documentado aqui:
Versão curta:você dizer
ExternalInterface.(chamada de"javascriptFunction", "argumento")
Outras dicas
Uma maneira comum de fazer isso é com o ExternalInterface classe, que você pode usar para chamar métodos de JavaScript.
Primeiro a definir seus métodos de JavaScript, por exemplo:
<script language="JavaScript">
function startsPlaying()
{
// do something when the FLV starts playing
}
</script>
Em seguida, modificar o ActionScript para chamar o método JavaScript no momento apropriado:
// inform JavaScript that the FLV has started playing
ExternalInterface.call("startsPlaying");
Para obter mais informações, consulte o Flash CS3 documentação.
se você não quer carregar
import flash.external.*;
para que você também possa fazer uma
getUrl("javascript:startsPlaying();");