1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
var menu_xml = new XML();
menu_xml.load("xmlTest.xml");
menu_xml.ignoreWhite = true;
//
menu_xml.onLoad = function() {
_global.nbrMenuFirstLevel = this.childNodes[0].childNodes.length;
_global.racine = this.childNodes[0];
for (i=0; i<nbrMenuFirstLevel; i++) {
_root.attachMovie("etiquette","menuItem"+i,i);
_root["menuItem"+i]._x = 8;
_root["menuItem"+i]._y = 30+(i*19);
_root["menuItem"+i].nomElement = racine.childNodes[i].attributes.title;
_root["menuItem"+i].derouleur.Enfants = racine.childNodes[i].childNodes;
_root["menuItem"+i].derouleur.niveau1 = _root["menuItem"+i];
_root["menuItem"+i].derouleur.profondeur = 1;
_root["menuItem"+i].derouleur.y = _root["menuItem"+i]._y
_root["menuItem"+i].derouleur.onPress = generateSubMenu;
}
};
//
getProps = function (table, resultats, position, toExclude) {
for (prop in table) {
if (typeof(table[prop]) == "movieclip" && prop.substr(0, 8) == "menuItem") {
if (table[prop] != toExclude) {
trace(table+"."+prop+" Name:"+table[prop].nomElement+" H:"+table[prop].derouleur.y+" Position:"+position);
if ( table[prop].derouleur.y > position ) {
resultats.push(table[prop]);
} else {
getProps(table[prop], resultats, position);
}
}
}
}
};
replacerMenus = function (elt) {
var decalY = 0;
var resultats = [];
getProps(_root, resultats, elt.derouleur.y, elt);
for ( i=0; i<resultats.length; i++ ) {
resultats[i]._y += 19*elt.derouleur.Enfants.length;
resultats[i].derouleur.y += 19;
}
/*_global.destinationsMenus = [];
for (i=0; i<nbrMenuFirstLevel; i++) {
placeMenu = 30+decalY;
destinationsMenus.push(placeMenu);
decalY += _root["menuItem"+i]._height;
}
for (i=0; i<nbrMenuFirstLevel; i++) {
_root["menuItem"+i].numeroEntree = i;
_root["menuItem"+i].onEnterFrame = function() {
this._y += (destinationsMenus[this.numeroEntree]-this._y)*0.2;
};
}*/
};
generateSubMenu = function () {
if (this._currentframe == 1) {
this.gotoAndStop(2);
for (i=0; i<this.Enfants.length; i++) {
tempo = this.niveau1.attachMovie("etiquette", "menuItem"+i, i);
tempo._x = 10*this.profondeur;
tempo._y = 19+(i*19);
tempo.derouleur.profondeur = this.profondeur+1;
tempo.nomElement = this.Enfants[i].attributes.title;
tempo.derouleur.niveau1 = this.niveau1["menuItem"+i];
tempo.derouleur.Enfants = this.Enfants[i].childNodes;
tempo.derouleur.y = this.y+tempo._y
tempo.derouleur.onPress = generateSubMenu;
}
replacerMenus(this.niveau1);
} else {
this.gotoAndStop(1);
var resultats = [];
for (i=0; i<this.Enfants.length; i++) {
this.niveau1["menuItem"+i].removeMovieClip();
}
getProps(_root, resultats, this.y);
for ( i=0; i<resultats.length; i++ )
resultats[i].derouleur.y -= 19;
}
//
}; |
Partager