Mi pregunta es como cargar un Menu XML de 2 niveles, hice un menu de un nivel muy bueno pero luego me dijeron que tenia que hacerlo para 2 niveles y mi problema es como diferencio el 1 nivel del 2 nivel para almacenarlo y mostrarlo.
El menu es horizontal les muestro el codigo AS:
Código HTML:
Ver original
var espacio = 40;//Espacio entre los botones var CantBtns=0; var BtnActivo=0; var SpacioTotal:Number=0; var Sangria=20; var menuXml:XML = new XML(); menuXml.ignoreWhite = true; menuXml.onLoad = function(success) {} if(success){ CantBtns=menuXml.firstChild.childNodes.length; BtnsMenu(); BtnActivo=0; }else{ trace("No se pudo cargar el archivo XML"); } }; function BtnOff(){ for (var j:Number = 0; j<CantBtns; ++j) { if(BtnActivo==j){ this["item_mc"+j].gotoAndStop(2); }else{ this["item_mc"+j].gotoAndStop(1); } } } function BtnsMenu(){ for (var i:Number = 0; i<menuXml.firstChild.childNodes.length; ++i) { trace("RAMAS: "+ menuXml.firstChild.childNodes.length); this.attachMovie("item_mc", "item_mc"+i, i+1); this["item_mc"+i].Enlace = menuXml.firstChild.childNodes[i].attributes.link.toString(); this["item_mc"+i].NumBtn = i; this["item_mc"+i].tituBtn.etiqueta_txt.text = menuXml.firstChild.childNodes[i].attributes.nombre.toString(); this["item_mc"+i].tituBtn.etiqueta_txt.autoSize = "left"; this["item_mc"+i].Rectangulo_btn._width=this["item_mc"+i].tituBtn.etiqueta_txt._width if(i<>0){ this["item_mc"+i]._x = Sangria+SpacioTotal; SpacioTotal=SpacioTotal + this["item_mc"+i]._width + espacio; }else{ this["item_mc"+i]._x = Sangria; SpacioTotal=this["item_mc"+i]._width + espacio; } this["item_mc"+i]._y = 15; BtnOff(); this["item_mc"+i].Rectangulo_btn.onRelease = function() { // getURL(this._parent.Enlace); BtnActivo=this._parent.NumBtn; BtnOff(); }; this["item_mc"+i].Rectangulo_btn.onRollOver = function() { if(BtnActivo<>this._parent.NumBtn){ this._parent.gotoAndStop(2); } }; this["item_mc"+i].Rectangulo_btn.onRollOut = function() { if(BtnActivo<>this._parent.NumBtn){ this._parent.gotoAndStop(1); } }; } } menuXml.load("xml/botones.xml"); stop();
Y el archivo XML es el siguiente:
Código XML:
Ver original
<?xml version="1.0" encoding="UTF-8"?> <menu> <menuXml nombre="NOSOTROS" link="Nuevo_ingreso/admi_puebla.html"/> <submenu nombre= "SubNosotros1"> <submenu nombre= "SubNosotros2"> <submenu nombre= "SubNosotros3"> <menuXml nombre="PROGRAMAS (2010)" link="Nuevo_ingreso/admi_tlaxcala.html"/> <submenu nombre= "SubNosotros4"> <submenu nombre= "SubNosotros5"> <submenu nombre= "SubNosotros6"> <menuXml nombre="AGENCIA" link="Nuevo_ingreso/admi_tlaxcala.html"/> <submenu nombre= "SubNosotros7"> <submenu nombre= "SubNosotros8"> <submenu nombre= "SubNosotros9"> <submenu nombre= "SubNosotros10"> <submenu nombre= "SubNosotros11"> <submenu nombre= "SubNosotros12"> <menuXml nombre="SCOUTING" link="Nuevo_ingreso/admi_tlaxcala.html"/> <submenu nombre= "SubNosotros13"> <submenu nombre= "SubNosotros14"> <submenu nombre= "SubNosotros15"> <menuXml nombre="OTROS SERVICIOS" link="Nuevo_ingreso/admi_tlaxcala.html"/> <submenu nombre= "SubNosotros16"> <submenu nombre= "SubNosotros17"> <submenu nombre= "SubNosotros18"> <menuXml nombre="CONTACTO" link="Nuevo_ingreso/admi_tlaxcala.html"/> <submenu nombre= "SubNosotros19"> <submenu nombre= "SubNosotros20"> <submenu nombre= "SubNosotros21">