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 :

Rendre visible des clips en cliquant sur d'autres clips avec la boucle For [8]


Sujet :

Flash

  1. #1
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Rendre visible des clips en cliquant sur d'autres clips avec la boucle For
    Bonjour,

    Après avoir potassé les tutos sur l'AS2 pendant 1 mois, me voilà entrain d'essayer de faire des petits exos ludiques sur flash.
    Mon souci est que je n'arrive pas à rendre visible des noms(clip1 à clip6) d'objets figés sur un schéma en survolant des cadres(cadres1 à cadres6) avec l'instruction FOR. Alors qu'en faisant un copier/coller pour chaque clip, le tous fonctionne. Ci-dessus, mon code et merci pour vos réponses.

    function nom() {
    for (var i = 1; i<=6; i++) {
    _root['cadres'+i]._alpha = 0;
    _root['nom'+i]._visible = false;
    _root['cadres'+i].onRollOver = function() {
    _root['nom'+i]._visible = true;
    };
    _root['cadres'+i].onRollOut = function() {
    _root['nom'+i]._visible = false;
    };
    }
    }
    nom();

    Après un test j'ai l'impression que le problème vient des lignes _root['nom'+i]._visible = true; qui ne sont pas reconnues.

  2. #2
    Membre actif Avatar de gustave02
    Homme Profil pro
    aucune
    Inscrit en
    Février 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Février 2013
    Messages : 162
    Points : 225
    Points
    225
    Par défaut
    bonjour
    j'ai abandonné as2 depuis quelque moment, mais j'ai un doute.

    tu dis
    _root['cadres'+i].onRollOver = function() {
    _root['nom'+i]._visible = true;
    };
    alors je pense que si ton objet est invisible tu ne peux avoir de rollOver. si il est invisible je pense qu'il n'y a plus d'action mouse possible. invisible serait plustot = a disparut.

    je pense que si tu lui n'est un alpha a 0.01 il sera pas visible mais gardera les ecouteurs mouse.
    voila ou je vais regarder pointer les recherches.

    @+gustave02

  3. #3
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour Gustave02, merci pour ta réponse.

    En effet j'y avais pensé, mais rien y fait. En fait si j'écris cela à la place, tous marche bien :

    function nom() {
    for (var i = 1; i<=6; i++) {
    _root['cadres'+i]._alpha = 0;
    _root['nom'+i]._visible = false;
    }
    }
    nom();
    cadres1 .onRollOver = function() {
    nom1._visible = true;
    };


    ainsi de suite pour les six fonctions en gras, ce qui prouves que les écouteurs mousses des cadres ne sont pas invisibles avec alpha = 0, non ?.
    Mais j'aimerais vraiment comprendre l'autre architecture pour diminuer mes lignes.

    De plus avec la fonction onRollover dans la boucle for, en passant la souris sur le cadre invisible(alpha=0), la petite main apparaît bien .

    j'ai essayé de voir si ce n'étais pas un problème de _parent, mais je n'y arrive pas.

    Merci.

  4. #4
    Membre actif Avatar de gustave02
    Homme Profil pro
    aucune
    Inscrit en
    Février 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Février 2013
    Messages : 162
    Points : 225
    Points
    225
    Par défaut
    bingo
    tu as raison j'ai taper a coté la premiere fois

    la solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function nom() {
    	for (var i = 1; i<=6; i++) {
    		_root['cadre'+i]._alpha = 0;
    		_root['nom'+i]._visible = false;
    		this['cadre'+i].onRollOver = function() {
    				_root["nom"+this._name.substr(5,1)]._visible = true;
    		}
    		_root['cadre'+i].onRollOut = function() {
    			    _root["nom"+this._name.substr(5,1)]._visible = false;
    		}
    	}
    }
    nom();

  5. #5
    Membre actif Avatar de gustave02
    Homme Profil pro
    aucune
    Inscrit en
    Février 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Février 2013
    Messages : 162
    Points : 225
    Points
    225
    Par défaut
    j'explique

    au moment ou on fait la fonction dans ton exemple
    _root['nom'+i]._visible = false; // i = undefine
    donc on demande a nomundefine._visible = false; et la ca donne rien.


    _root["nom"+this._name.substr(5,1)]._visible = false;// this._name.substr(5,1) == si c'est cadre1 le résultat et 1

    on est en as2 et pas en as3 pour les personnes qui lisent ultérieurement ce post.
    @+gustave02

  6. #6
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Youpi, un gros merci à toi

    tous fonctionnes comme sur des roulettes à quelques correction près, substr(6, 1) et non substr(5,1)
    je ne la connaissait pas cette variable, encore merci

    @+

  7. #7
    Membre actif Avatar de gustave02
    Homme Profil pro
    aucune
    Inscrit en
    Février 2013
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Février 2013
    Messages : 162
    Points : 225
    Points
    225
    Par défaut
    tu dis
    tous fonctionnes comme sur des roulettes Cool.

    et puis à quelques correction près, substr(6, 1) et non substr(5,1) oui car tu as appellé tes cadre "cadres" et moi "cadre"
    donc pour ton code substr(6, 1)
    pour le mien substr(5,1)

    le principal et d'avoir compris le blême.

    @+gustave02

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

Discussions similaires

  1. Créer des boutons en cliquant sur un autre bouton
    Par alaskabender dans le forum Débuter
    Réponses: 11
    Dernier message: 27/11/2014, 19h50
  2. Comment attacher un clip de classe sur un autre clip de classe
    Par ar vuzhugenn dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 05/01/2008, 23h02
  3. Rendre visible des contrôles sur un Form ayant des zones transparentes
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 8
    Dernier message: 20/09/2007, 19h25
  4. [PHP-JS] ajouter des champ en cliquant sur un bouton?
    Par einsteineuzzz dans le forum Langage
    Réponses: 3
    Dernier message: 29/06/2006, 17h36
  5. rendre visible des champs de texte
    Par lnikolanta dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 16/09/2005, 18h07

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