Fonction pour movie clic crée par le code [Résolu]

cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 10 oct. 2006 à 15:29 - Dernière réponse : cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention
- 11 oct. 2006 à 16:23
Salut,

Voila, j'ai fait une galerie d'image qui tire ces information d'un fichier xml généré par une page php.

Tout fonctionne, j'utilise la fonction "createEmptyMovieClip" pour créer un movieclip vide que je remplis avec "loadMovie".

Mon probleme et que je voudrais que l'image grandisse quand je là survole. La fonction devrai resembler a cela je crois :
    nomDeOcurrence.onMouseOver = function{
       //le code pour le zoom
    }

Cependant, meme si je connais le code pour détecter le survole, vu que le movieClip et crée par le code, je ne saispas comment généré la fonction pour chaque movieClip crée.

Si vous etês perdu, je vous comprend !

En gros, je veux mettre une fonction sur movieClip que je crée dynamiquement par le code.

Je vous remercie de votre aide.
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_Girou 1204 Messages postés lundi 10 mars 2003Date d'inscription 23 juillet 2009 Dernière intervention - 10 oct. 2006 à 16:00
3
Merci
Salut milo,

nomDeOcurrence.onRollOver = function{
       //le code pour le zoom
   this._xscale=110;
   this._yscale=110;
    }
ce qui grossit l'image à 110 % de sa taille originale.
Attention, ce n'est pas un aggrandissement progressif, c'est 100 % ou 110 % de la taille.
Pas oublier de remettre l'échelle à 100% lorsque la souris est plus dessus !
nomDeOcurrence.on Roll Out = function{
       //le code pour le zoom
   this._xscale=100;
   this._yscale=100;
    }

bonne après-midi.

Jo

Merci cs_Girou 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 83 internautes ce mois-ci

Commenter la réponse de cs_Girou
Meilleure réponse
cs_Girou 1204 Messages postés lundi 10 mars 2003Date d'inscription 23 juillet 2009 Dernière intervention - 11 oct. 2006 à 15:53
3
Merci
hum...

sans doute que le la variable transmise à la fonction est une string ne contenant que "image47" et non pas une référence complete au movieClip

essaye en mettant nom=this et pas nom=this._name dans ta fonction Survole, et dans nImg le trace(_nom) devrait te donner quelquechose comme "_level0.image47"
ce qui est un référence correcte vers ton clip

@+

Merci cs_Girou 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 83 internautes ce mois-ci

Commenter la réponse de cs_Girou
cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 11 oct. 2006 à 09:42
0
Merci
Merci
Commenter la réponse de cs_milo2009
cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 11 oct. 2006 à 11:02
0
Merci
J'avais oublié un truc, mon code est :

Survole = function(){
    nom = this._name;
    tDep = getTimer()+1400;
    monInterval = setInterval(nImg, 80);
}

nImg = function (){  
    ???._xscale+=10;
    ???._yscale+=10;
   
    if(getTimer() >= tDep){
        clearInterval(monInterval);}
};   

image47.onRollOver = Survole;

Le probleme c'est que la fonction "nImg" n'as pas le nom de l'occurence a zoomer, j'ai essayer avec la variable contenant son nom mais cela ne fonctionne pas.
Difficulté,  je ne peux rien passer en parametre à "nImg" sinon setInterval ne fonctionne plus.

Tu a une solution ?

Merci
Commenter la réponse de cs_milo2009
cs_Girou 1204 Messages postés lundi 10 mars 2003Date d'inscription 23 juillet 2009 Dernière intervention - 11 oct. 2006 à 12:18
0
Merci
Salut,
la fonction setInterval() accepte des parametres.

Survole = function(){
    nom = this._name; // attention je pense que this._name se réfère à la fonction et pas au clip qui appel la fonction
    tDep = getTimer()+1400;
    monInterval = setInterval(nImg, 80, nom );
}

nImg = function (_nom){  
    _nom._xscale+= 10;
    _nom ._yscale+ =10;
   
    if(getTimer() >= tDep){
        clearInterval(monInterval);}
};   

image47.onRollOver = Survole;
Commenter la réponse de cs_Girou
cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 11 oct. 2006 à 14:07
0
Merci
Etonnant, mais marche pas.

Survole = function(){
    nom = this._name; // this._name retourne bien le nom du clic qui l'a appelé
    tDep = getTimer()+1400;
    monInterval = setInterval(nImg, 80, nom );
}

nImg = function (_nom){
    trace(_nom);   //Affiche bien le contenue de la variable qui est "image47"

    //ERREUR
    trace(_nom.xscale);
    _nom._xscale+= 10;
    _nom ._yscale+ =10;
   // FIN ERREUR
   
    if(getTimer() >= tDep){
        clearInterval(monInterval);}
};   

image47.onRollOver = Survole;
Commenter la réponse de cs_milo2009
cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 11 oct. 2006 à 14:09
0
Merci
trace(_nom._xscale); //affiche undefined(dsl pour l'erreur d'orthorgraphe ci-dessus)
Commenter la réponse de cs_milo2009
cs_milo2009 181 Messages postés vendredi 4 juillet 2003Date d'inscription 8 août 2011 Dernière intervention - 11 oct. 2006 à 16:23
0
Merci
Tu a raison, ca marche.

Cependant, on m'a donnée une autre explication.

Si cela ne fonctionnais pas c'es parceque le movie clip et exterieur a la fonction, donc le "this" ne la connais pas.

J'ai donc remplacé "this" par "_root", et la cela fonctionne.

Merci de ton aide.
Commenter la réponse de cs_milo2009

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.