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 :

Charger un movieclip via une instruction javascript


Sujet :

Flash

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut Charger un movieclip via une instruction javascript
    Bonjour @ toutezéatous,

    J'ai dans une page web, une petite animation flash qui représente une carte de France. Lorsque l'on clique sur une région, on charge un clip qui correspond au département.

    Cette animation fait partie d'un "moteur de recherche" qui se trouve sur ma page web.
    La carte sert à sélectionner une région/un département, l'information est transmise via ExternalInterface à ma page web. Le visiteur saisi dans des champs d'autres informations et il valide le formulaire qui est envoyé via la méthode post vers un traitement php assez compliqué.

    Le pb, c'est qu'à la validation de mon formulaire, ma page est rafaichie et mon animation se réinitialise, c'est à dire qu'elle revient à la position "catre de France".
    Ce que je souhaiterai c'est qu'elle reste sur le département choisi.

    Je ne sais pas comment faire...

    J'ai pensé, soit envoyer via ExternalInterface la valeur de mon département à mon animation pour qu'elle charge le moviclip qui va bien, comme si l'utilisateur avait cliqué sur un département. J'ai vu dans des tuto comment passer une valeur de javascript à Flash, mais pas comment lui envoyer une instruction ;-(

    Soit il faudrait que je trouve une solution pour envoyer mon formulaire sans rafraichir mon animation flash... Mais là non plus, je ne sais pas comment faire ni même si c'est possible...

    Quelqu'un aurait-il une idée ?

    Merci et excellente nuit !

  2. #2
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    salut,
    tu peux utiliser flashvars et loaderinfo pour récupérer ta variable dans flash
    un exemple ici : http://jeanphiblog.media-box.net/dot...info-flashvars

    sinon, tu peux utiliser un sharedobject qui conservera dans un cookie le nom du département sélectionné

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    Bonjour Jean-Philippe et merci pour ta réponse, je me sens tout de suite moins seule au monde ;o))

    Après être allée voir ta solution, je me demande si je ne suis pas un peu "has-been"...

    Je suis encore sur flash 8... Du coup, je pense que je pourrais faire ça en utilisant EXternalinterface non ?

  4. #4
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    dans ce cas le plus simple avec Flash 8, est d'utiliser un SharedObject

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    Je suis allée voir le SharedObject, mais ça me semble compliqué à première vue à mettre en oeuvre, mais je n'ai pas bien approfondi non plus car j'ai pensé à un truc dans ce genre là, ça ne fonctionnerait pas ?

    <param name="flashvars" value="maVar=Salut Jean-Philippe" />

    Parce qu'en fait, j'ai juste besoin de lui envoyer 1 seule et unique valeur :
    - Au démarrage elle est vide => mon anim ne bouge pas (omportement par défaut)
    - Si l'utilisateur a choisi un département, comme ma page va se rafraichir, il va passer par cette ligne, récupérer la valeur et dans l'anim, il testera si elle est affectée et si oui, il lance l'instruction attachmovieclip avec le bon paramètre...

    Mais ça me semble un peu trop simple pour que ça puisse fonctionner... Tu en penses quoi ?

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    J'ai trouvé un autre tuto concernant SharedObject qui du coup, me semble plus simple à mettre en oeuvre...

    Juste une question :

    Sur la première frame :
    SO = sharedObject.getLocal(«ma_region») ;

    Et je sauvegrade comme ça :
    SO.data.ma_region = « Bonjour Jean-Philippe » ;
    SO.flush() ;

    C'est bien ça ?

  7. #7
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    oui c'est ça

  8. #8
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    Re-bonjour Jean-Philippe,

    J'ai donc essyé de mettre en oeuvre, mais lorsque je fait un trace de la valeur de cette façon en image 2 (en image 1 j'ai la déclaration) :

    SO.data.ma_region = « Bonjour Jean-Philippe » ;
    SO.flush() ;
    trace(SO.data.ma_region);

    J'ai toujours "undefined" ;-((

    Est-ce que je dois charger autre chose ?

  9. #9
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var mySo:SharedObject = SharedObject.getLocal("region");
    mySo.data.selectRegion = "Ardèche";
    mySo.flush();
    trace(mySo.data.selectRegion);

  10. #10
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    J'ai trouvé !
    Dans ma déclaration j'avais mis :
    SO = sharedObject.getLocal(«ma_region») ;

    Alors qu'il fallait mettre :
    SO = SharedObject.getLocal(«ma_region») ;

    C'était LA majuscule qui fait toute la différence ;o))

    un grand MERCI !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mise à jour dynamique de champs via une étape javascript.
    Par losgoomy dans le forum kettle/PDI
    Réponses: 0
    Dernier message: 10/12/2014, 17h54
  2. Réponses: 4
    Dernier message: 02/08/2011, 09h15
  3. lancer une méthode c# via une confirmbox javascript
    Par ferdi05 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 14/05/2009, 17h04
  4. comment charger une listbox via une requete access
    Par sanfour_walhan dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 27/12/2006, 07h44
  5. [Debutant]récupération d'une Date via calendrier en javascript
    Par chihiro_ba dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 08/12/2006, 09h51

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