[flash] boucle for avec rollover
bomberwaterman
Messages postés
538
Statut
Membre
-
bomberwaterman Messages postés 538 Statut Membre -
bomberwaterman Messages postés 538 Statut Membre -
Bonjour,
j'ai un probleme avec une boucle for, voici le code
for (var i=1; i<n+1; i++)
{
var cd=this["cd_"+i];
cd.onRollOver = function ()
{
cd._alpha = 100;
}
cd.onRollOut = function ()
{
cd._alpha = 20;
}
}
en fait l'histoire du rollOver marche pas, l'alpha ne change pas, je precise que je ne suis pas a la racine de l'animation, alors est ce que ya une histoir de this ou _root ?
merci
j'ai un probleme avec une boucle for, voici le code
for (var i=1; i<n+1; i++)
{
var cd=this["cd_"+i];
cd.onRollOver = function ()
{
cd._alpha = 100;
}
cd.onRollOut = function ()
{
cd._alpha = 20;
}
}
en fait l'histoire du rollOver marche pas, l'alpha ne change pas, je precise que je ne suis pas a la racine de l'animation, alors est ce que ya une histoir de this ou _root ?
merci
A voir également:
- [flash] boucle for avec rollover
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Adobe flash player - Télécharger - Divers Web & Internet
- Flash drive tester - Télécharger - Divers Utilitaires
- Flash video downloader - Télécharger - Téléchargement & Transfert
- Shockwave flash - Télécharger - Divers Web & Internet
8 réponses
non en fait tu laisse tout a l'interieur et tu stock cette variable "cd" dans un tableau a la fin de ta boucle
En fait a chaque tour de boucle tu ne fais pas l'alpha, tu cré un evenement onrollover qui en ce declenchant va regler l'alpha de l'objet contenu dans cd. Le souci comme je t'ai dis c'est qu'a chaque tour de boucle tu ecrase cd. A la fin de ta boucle tu devrai avoir un truc du genre
En fait a chaque tour de boucle tu ne fais pas l'alpha, tu cré un evenement onrollover qui en ce declenchant va regler l'alpha de l'objet contenu dans cd. Le souci comme je t'ai dis c'est qu'a chaque tour de boucle tu ecrase cd. A la fin de ta boucle tu devrai avoir un truc du genre
var tab = new array(); //je declare un nouveau tableau
for (var i=1; i<n+1; i++)
{
var cd=this["cd_"+i];
cd.onRollOver = function ()
{
cd._alpha = 100;
}
cd.onRollOut = function ()
{
cd._alpha = 20;
}
tab.push(cd); // Je sauve la variable cd dans une nouvelle case du tableau ainsi rien ne sera perdu au prochain tour de boucle
}
Bonjour,
mais non rien à voir, la variable cd ne s'écrase pas, il faut juste dans ton code mettre
cd.onRollOver = function ()
{
this._alpha = 100;
}
cd.onRollOut = function ()
{
this._alpha = 20;
}
à l'intérieur de tes fonctions tu remplaces cd par this
voilà ;)
mais non rien à voir, la variable cd ne s'écrase pas, il faut juste dans ton code mettre
cd.onRollOver = function ()
{
this._alpha = 100;
}
cd.onRollOut = function ()
{
this._alpha = 20;
}
à l'intérieur de tes fonctions tu remplaces cd par this
voilà ;)
en AS3 ? AS2 ?
dans tous les cas toute manière il y aura un problème a cause du fait que ta variable cd tu l'écrase a chaque tour de boucle... Donc fatalement les rollover que t'a défini au tour de boucle précédent sont écrasés.
Il faut qu'a chaque tour de boucle tu stock la variable cd dans un tableau
c'est déjà un premier point ^^
dans tous les cas toute manière il y aura un problème a cause du fait que ta variable cd tu l'écrase a chaque tour de boucle... Donc fatalement les rollover que t'a défini au tour de boucle précédent sont écrasés.
Il faut qu'a chaque tour de boucle tu stock la variable cd dans un tableau
c'est déjà un premier point ^^
re, merci d'avoir repondu, c'est de l'as 2.
Sinon pour la variable que j'ecrase, comment faut-il faire? Je dois stocker dans un tableau quelle variable?
Je ne vois pas pourquoi ça ecrase ma variable en faite, je pensais que lors de chaque tour de ma boucle for l'alpha de chaque cd_ se ferait.
Je met seulement
var cd=this["cd_"+i];
dans la boucle for et les rollover a lexterieur?
a+
Sinon pour la variable que j'ecrase, comment faut-il faire? Je dois stocker dans un tableau quelle variable?
Je ne vois pas pourquoi ça ecrase ma variable en faite, je pensais que lors de chaque tour de ma boucle for l'alpha de chaque cd_ se ferait.
Je met seulement
var cd=this["cd_"+i];
dans la boucle for et les rollover a lexterieur?
a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
donc, j'ai testé voici le nouveau code :
for (var i=1; i<n+1; i++)
{
var cd=this["cd_"+i];
var pp=this["pp_"+i];
cd._alpha = 60;
pp._alpha = 60;
cd.onRollOver = function ()
{
this._alpha = 100;
pp._alpha = 100;
}
cd.onRollOut = function ()
{
this._alpha = 60;
pp._alpha = 60;
}
}
et c'est la que ça se corse, en fait j'ai des images en dessous des cadres (nommées pp_1,pp_2 etc) le probleme c'est que lalpha ne sapplique pas a ces photos. Pourtant le changement dalpha fonctionne en passant sur le cadre mais uniquement sur le cadre. Il doit y avoir une histoire de profondeur ou de level, jai rein compris à l'aide et les forums je n'en trouve pas.
qqun a t-il une idée?
merci
for (var i=1; i<n+1; i++)
{
var cd=this["cd_"+i];
var pp=this["pp_"+i];
cd._alpha = 60;
pp._alpha = 60;
cd.onRollOver = function ()
{
this._alpha = 100;
pp._alpha = 100;
}
cd.onRollOut = function ()
{
this._alpha = 60;
pp._alpha = 60;
}
}
et c'est la que ça se corse, en fait j'ai des images en dessous des cadres (nommées pp_1,pp_2 etc) le probleme c'est que lalpha ne sapplique pas a ces photos. Pourtant le changement dalpha fonctionne en passant sur le cadre mais uniquement sur le cadre. Il doit y avoir une histoire de profondeur ou de level, jai rein compris à l'aide et les forums je n'en trouve pas.
qqun a t-il une idée?
merci