IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

Flash et Javascript sous IE7


Sujet :

Flash

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 105
    Points : 86
    Points
    86
    Par défaut Flash et Javascript sous IE7
    Bonjour,

    Voilà, j'ai une animation Flash laquelle doit être influencée en javascript par un simple bouton. Par influencée, je veux dire qu'une fonction ActionScript 2.0 doit être executée. Pour cela j'ai utilisé ExternalInterface.addCallBack(). Cela marche parfaitement sur Firefox deuxième du nom, mais sur IE 7 j'ai une belle erreur "Cet objet ne gère pas cette propriété ou cette méthode". J'ai cru comprendre que pour que cela marche sur IE7 il fallait rajouter un timer et eviter de nommer la fonction AS comme la fonction JS, ce que j'ai fait, mais rien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script type="text/javascript">
     
    	function callExternalInterface(element) {
    		document[element].jsAction();
    	}
     
    </script>
     
    <embed id="root" width="304" height="60" allowscriptaccess="always" quality="high" bgcolor="#EDE9E7" name="root" src="anim.swf" type="application/x-shockwave-flash"/>
    <button onClick="callExternalInterface('root');">Clic</button>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    import mx.controls.Alert;
     
    import flash.external.*;
     
    delInterval = setInterval(doExternalInterface, 700);
     
     
    function doExternalInterface():Void {
     
    	clearInterval(delInterval);
    	ExternalInterface.addCallback("jsAction", null, flAction);
    }
     
     
     
    function flAction():Void {
    	Alert.show('ok');
    }
    Voyez-vous où j'ai pu me planter?

    Merci.

    EDIT : Je tiens à préciser que je n'ai commencé à coder en ActionScript que très récemment
    Problèmes résolus : 3
    N'oubliez pas le tag [Résolu]

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Points : 2
    Points
    2
    Par défaut javascript vers flash sous Firefox
    Bonjour,
    je pense que ton problème viens du code javascript que tu utilise pour accéder à ton animation Flash. "document[element]" ne permet d'accéder à du flash que lorsque l'on est sous IE.

    Pour y accéder depuis Firefox, il faut utiliser "document.embeds[element]".

    Regarde là, c'est expliqué plus en détail :
    http://www.permadi.com/tutorial/flashjscommand

    Martin

Discussions similaires

  1. Menu javascript sous ie7
    Par Papapetch dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/05/2008, 09h40
  2. Pb activation flash sous IE7 besoin d'aide !
    Par keither28 dans le forum Flash
    Réponses: 3
    Dernier message: 06/05/2008, 18h11
  3. javascript et flash AS 2 sous ie7
    Par nanou73 dans le forum Intégration
    Réponses: 3
    Dernier message: 20/06/2007, 18h25
  4. popup javascript sous une animation flash
    Par saint-pere dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/08/2006, 15h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo