Comment puis-je faire de flash cs3, actionscript envoyer des événements de javascript?

StackOverflow https://stackoverflow.com/questions/38408

  •  09-06-2019
  •  | 
  •  

Question

Je suis à l'aide de Flash pour jouer un .flv movieclip sur mon site, mais je veux avoir le .swf envoyer déclenchement d'un événement dans mon javascript quand il de commencer le chargement, la lecture commence et se termine à jouer.

Quelle est la meilleure façon de le faire que dans Flash CS3 à l'aide d'Actionscript 3.0 ?

Était-ce utile?

La solution

Vous devez utiliser le "allowScriptAccess" flash variable dans le code HTML.Vous voudrez probablement utiliser "sameDomain" comme type.Notez que si vous allez inter-domaine, vous avez également besoin d'héberger un fichier sur le serveur appelé "crossdomain.xml' qui permet à un tel script (le flash player vérifiez pour cela.Plus d'infos au http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14213&sliceId=2

L'appel est la partie facile.:-) Dans le code Flash, vous allez utiliser la ExternalInterface à faire l'appel, comme indiqué ici:

http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001655.html

Version courte:vous dites

ExternalInterface.call("javascriptFunction", "argument")

Autres conseils

Une façon courante de le faire est avec l' ExternalInterface de la classe, que vous pouvez utiliser pour appeler les méthodes JavaScript.

D'abord définir vos méthodes JavaScript, par exemple:

<script language="JavaScript">
    function startsPlaying()
    {
        // do something when the FLV starts playing
    }
</script>

Modifiez ensuite votre code ActionScript à l'appel de la méthode JavaScript au moment opportun:

// inform JavaScript that the FLV has started playing
ExternalInterface.call("startsPlaying");

Pour plus d'informations, reportez-vous à la Flash CS3 la documentation.

si vous ne voulez pas charger

import flash.external.*;

ainsi, vous pouvez également faire une

getUrl("javascript:startsPlaying();");
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top