Bonjour tout le monde
je viens de me mettre au Flash il y a 1 semaine et j'aimerais réalisé un menu deroulant parametré par un fichier XML. Mon probléme c'est que lanimation que j'ai créer ne fonctionne pas comme je l'aurais souhaité.
si vous voyez qqchose qui cloche faites le moi savoir.
le fichier data XML:
<?xml version="1.0" encoding="iso-8859-1" ?>
<galerie>
</galerie>
Le code de mon flash:
animation=function(clip, sens){
var vitesse=10;
if(sens=="+" and clip._x<0){
clip._x+=vitesse;
clip._parent["logo"+clip._name]._x+=vitesse;
clip._parent["nom"+clip._name]._x+=vitesse;
}else if(clip>=0){
clip._x-=vitesse;
clip._parent["logo"+clip._name]._x-=vitesse;
clip._parent["nom"+clip._name]._x-=vitesse;
}
if(sens=="+"){
if(clip._x<0){
setInterval(animation(clip, sens), 300);
}
}else{
if(clip._x>-225){
setInterval(animation(clip, sens), 300);
}
}
trace(clip._x);
}
movieClip.prototype.loadMenuFromXml = function(file) {
this.menuXml = new XML();
racine = this;
this.menuXml.ignoreWhite = true;
this.menuXml.onLoad = function() {
racine.picsLoaded = true;
racine.menu = this.firstChild.childNodes;
racine.lon = racine.menu.length;
for (var i = 0; i<racine.lon; i++) {
var nom = racine.menu[i].attributes.text;
racine.createEmptyMovieClip("lien"+i, i+10);
racine["lien"+i]._alpha=50;
racine["lien"+i].loadMovie(racine.menu[i].attributes.fond);
racine["lien"+i]._visible = true;
racine["lien"+i]._x = -225;
racine["lien"+i]._y = i*40;
racine["lien"+i].width = 150;
racine["lien"+i].height = 30;
racine["lien"+i].enabled=true;
racine["lien"+i].trackAsMenu=true;
racine.createEmptyMovieClip("logolien"+i, i+100);
racine["logolien"+i].loadMovie(racine.menu[i].attributes.logo);
racine["logolien"+i]._visible = true;
racine["logolien"+i]._x = 0;
racine["logolien"+i]._y = (i*40)+5;
racine["logolien"+i].width = 20;
racine["logolien"+i].height = 20;
racine.createTextField("nomlien"+i, i+200, -225, (i*40), 215, 30);
racine["nomlien"+i].text=racine.menu[i].attributes.text;
racine["nomlien"+i].selectable=false;
racine["nomlien"+i].setTextFormat(_root.monFormat);
racine.onEnterFrame=function(){
for (var i = 0; i<racine.lon; i++) {
racine["lien"+i].onRollOver = function(){animation(this, "+");}
racine["lien"+i].onRollOut = function(){animation(this, "-");}
racine["lien"+i].onRelease= function(){ getURL(racine.menu[i].attributes.lien, "_blank");}
}
}
}
};
this.menuXml.load(file);
return true;
};
this.monFormat = new TextFormat();
this.monFormat.font="Comic Sans Ms";
this.monFormat.color = 0xFFFFFF;
this.monFormat.bullet = false;
this.monFormat.underline = false;
this.monFormat.bold=true;
this.monFormat.align="center";
this.monFormat.size=18;
_root.createEmptyMovieClip("menutest", 1);
_root.menutest._alpha=100;
_root.menutest.enabled=true;
_root.menutest._x = 10;
_root.menutest._y = 10;
_root.menutest.loadMenuFromXml("data.xml");
je cherche un bon livre un flash si vous des référence je suis prenneur. De même que pour des bon site avecsource et tutoriaux.
krevette ;-)
Afficher la suite