Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problemi con array e funzioni

    Ciao a tutti, maxi esperti del forum.

    Ho provato a postare una richiesta ma non mi ha filato nessuno...

    Ora provo andare più nello specifico. Devo creare in dinamico un menù a tendina dove passando in Rollover con il mouse mi si apra il relativo sottolivello.

    il codice è questo:
    Codice PHP:
    menuXml = new XML();
    menuXml.ignoreWhite true
    submenues 
    = new Array();
    menuXml.onLoad = function(success) {
      if (
    success) {
          
    menuItem this.firstChild.childNodes;
          for (var 
    i=0i<menuItem.lengthi++) {
            
    // 
              
    item _root.attachMovie("itemClip""itemClip" +ii);
            
    item._x =108*i;
            
    item._y =108;
            
    item.itemLabel.text menuItem[i].attributes.name;
            
    item.menuUrl menuItem[i].attributes.url;
            
    item.node menuItem[i].childNodes;
            
    item.onRollOver = function() {
                
    submenues(nodethis._y)
            }
            
    //trace(menuItem[i]);
            
    trace(submenues);
            function 
    submenu(nodey){
                
    trace(submenu(nodey));
                for (var 
    j=0node.lengthj++) {
                    
    attachMovie("SubItemClip""SubItemClip" +jj*j+2);
                    
    subitem._x 0;
                    
    subitem._y y+(14*j);
                    
    subitem.SubItemLabel node[j].attributes.name;
                    
    subitem.SubmenuUrl node[j].attributes.url;
                    
    subitem.onRelease = function() {
                          
    getURL(this.SubmenuUrl);
                    }
                }
            }    
            
    //trace(node);
        
    }
    }
    }
    menuXml.load("menu.xml"
    Ma non funziona perché non riesco a capire come assegnare il valore dell'array alla variabile...
    Esiste un altro metodo?
    Oppure, c'è ul altro metodo?
    Il file xml si annida così:
    <menu>
    <menuItem name="" url="">
    <menuSubItem name="" url="">
    </menuSubItem>
    </menuItem>
    </menu>

    Grazie dell'aiuto


    ::: plastical.net :::

    we're creative, seriously!

  2. #2
    damianto
    Guest
    Secondo me il problema sta nel fatto che quando utilizzi

    this.firstChild.childNodes il figlio in questione e' menu, percio' se vuoi avere il contenuto dell'attributo url del nodo menuItem devi prendere il figlio di menuItem[0]

    Non so se mi sono spiegato bene, ho avuto anch'io il tuo problema e l'avevo risolto cosi' come ti ho scritto.

    In questo momento non ho a portata di mano il codice e percio' non riesco a spiegarti meglio la cosa con un esempio.

    Spero tu abbia capito ugualmente.

  3. #3
    Uhm.. Non penso sia quello il problema.
    facendo un trace, i risultati sono giusti.

    Il problema è quello di assegnare al bottone il valore per farmi visualizzare sia il testo (ovvero Name="") e sia la possibilità di aprirmi il secondo Mc (SubItemCLip) che contiene i nodi figlio.

    Non riesco a capire come fare questo passaggio...
    ::: plastical.net :::

    we're creative, seriously!

  4. #4
    scusa la domanda ma se non e' specificato il file come fai a caricarlo ???

    P.S. scusa l'idiozia ma non ho mai usato XML con AS ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Si che è specificato...

    Comunque, sono andato ancora un po' oltre e ho apportato altre modifiche...
    Ma il submenu non me lo carica...

    Aiuto!!!


    codice:
    menuXml = new XML();
    menuXml.ignoreWhite = true
    menuXml.load("menu.xml")
    menuXml.onLoad = function(success) {
    	if (success) {
    		menuItem = this.firstChild.childNodes;
    		for (var i=0; i<menuItem.length; i++) {
    			submenues();
    			item = _root.attachMovie("itemClip", "itemClip" +i, i);
            	item._x =108*i;
            	item._y =108;
            	//item.itemLabel.text = menuItem[i].attributes.name;
    			item.itemLabel.text = menuItem[i].attributes.name;
    			//trace(menuItem[i]);
            	item.menuUrl = menuItem[i].attributes.url;
            	item.node = menuItem[i].childNodes;
    			trace(item.node);
            	item.onRollOver = function() {
                	item.submenu(this.node,this._y);
    				trace(this.node);
            	}
    			item.onRelease = function() {
                	item.getURL(this.menuURL);
            	}
    			function submenu() {
    				for (var j=0; j<node.length; j++) {
    					subitem = _root.attachMovie("SubItemClip", "SubItemClip" +j, j*j+2);
    					subitem._x = 0;
    					subitem._y = j+(14*j);
    					subitem.SubItemLabel.text = node[j].attributes.name;
    					subitem.SubmenuUrl = node[j].attributes.url;
    					subitem.onRelease = function() {
    						subitem.getURL(this.SubmenuUrl);
    					}
    				}
    				trace(subitem);
    			}
    		}
    	}
    }
    ::: plastical.net :::

    we're creative, seriously!

  6. #6
    eh ... controlla il tuo primo post...
    menuXml.load("menu.xml") <--- questo non c'e' e speravo fosse una svista banale, purtroppo non so
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.