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

    Menu dinamico con xml [Problemi]

    Premetto subito che ho la sensazione che il problema sia la mia niubbiaggine e niente di più...
    quindi sono accettati anche gli insulti
    Cmq ho questo problema, ho trovato in un sito un fantastico menu dinamico che carica i dati da xml, ho scaricato il file di esempio e l'ho aperto.. c'è solo un componente chiamato BounceMenu, fin qui tutto ok.
    Quando provo a portare il componente di questo file in un nuovo file funziona tutto tranne il "collapse" del menu, ovvero i sottomenu sono caricati sotto al menu principale, senza spostare i bottoni "padri".
    Vi linko i due esempi, quello funzionante e quello mio, non funzionante, avete una idea di come possa fare per renderlo utilizzabile???
    Grazie mille a tutti!!

    File originale funzionante

    File mio non funzionante

    dovete fare copia e incolla dei link per scaricarli (scusate ma ho solo Altervista come web directory)

  2. #2
    Dopo una giornata intera a pensarci ho avuto la brillante idea di controllare che actionscript usasse e per quale versione del player fosse impostato... ovviamente il 6
    C'è un modo per poterlo far funzionare anche in Flash 8????
    ditemi di si vi prego :P

  3. #3
    Ho provato a cambiare il codice per "aggiornarlo" alla versione 8.. ma non sono molto capace..
    C'è qualche anima pia che mi potrebbe dare una mano, magari anche solo spiegando quello che dovrei cambiare.

    ecco il codice:

    codice del componente BounceMenu:

    Codice PHP:
    menus = new XML()
    menus.load(sourcefile)
    menus.ignoreWhite true

    menus
    .onLoad = function(success) {
        
    menuData menus.firstChild.childNodes
        
        
    for(i=0;i<menuData.length;i++){
            
    subNodes menuData[i].childNodes
            
    if(menuData[i].nodeName == "button"){
                
    //Container clip holds submenu data
                
    createEmptyMovieClip("subContainer"+i,i-menuData.length)
                eval(
    "subContainer"+i)._alpha 0
                
    eval("subContainer"+i)._x = -1000000
                
                
    //Main Button attaching and spacing
                
    attachMovie("mainSuperButton","mainButton"+i,i)
                
    mainButtonRef = eval("mainButton"+i)
                
    mainButtonRef.textVar menuData[i].attributes.name
                mainButtonRef
    .index i
                mainButtonRef
    ._y =i*mainSpace
                
                
    //Main Button release action(rollover located in mainbutton mc)
                
    mainButtonRef.onRelease = function() {
                    if(
    open == this.index){
                        
    //second click error check. closes menu
                        
    resetMenu()
                        
    open undefined
                    
    }else{
                        
    //first click
                        
    open this.index
                        this
    .gotoAndStop(3)
                        
    collapse(this)
                    }
                    
    //add any mainbutton open state actions here.. like alpha, etc..
                    //containers are hidden ..way.. off stage and moved on release
                
    }
                for(
    j=0;j<=subNodes.length;j++){
                    
    containerRef = eval("subContainer"+i)
                    if(
    subNodes[j].nodeName == "subitem"){
                        
    containerRef.attachMovie("subSuperButton","subButton"+j,j)
                        
    containerRef["subButton"+j].textVar subNodes[j].attributes.name
                        containerRef
    ["subButton"+j].page subNodes[j].attributes.location
                        containerRef
    ["subButton"+j]._y j*subSpace
                        
                        containerRef
    ["subButton"+j].onRelease = function() {
                            
    //--------------------GOTO ACTION--------------\\
                            
    _root.gotoFunction(this.page)
                            
    this.gotoAndStop(3)
                        }
                    }
                }
            }
        }
    }
    function 
    collapse (except) {
        
    num except.index
        subRef 
    = eval("subContainer"+num)
        
    resetMenu()
        
    //The clips after the one clicked recieve new spots
        
    for(i=num+1;i<=9;i++){
            eval(
    "mainButton"+i).JumpTo(subRef._height+i*mainSpace)
        }
        
    subRef._y = eval("mainButton"+num)._height+(num*mainSpace)+subYadjust
        subRef
    ._x subXfactor
        fade
    (subRef,"in")
    }
    //resets everything to original places
    function resetMenu() {
        for(
    j=0;j<=(9);j++){
            eval(
    "subContainer"+j)._alpha 0
            
    eval("subContainer"+j)._x = -1000000
            
    eval("subContainer"+j)._y 0
            
    eval("mainButton"+j).JumpTo(j*mainSpace)
        }    
    }
    function 
    fade(fadeTarget,param) {
        if(
    param == "in"){
            
    fadeTarget.onEnterFrame = function(){
                if(
    this._alpha<100){
                
    this._alpha+=5
                
    }
            }
        }

    ed ecco il codice del componente interno (dove c'è la funzione che secondo me non va):

    Codice PHP:
    this.onRollOver = function() {
        
    gotoAndStop(2)
    }
    this.onRollOut = function() {
        
    gotoAndStop(1)
    }

    function 
    JumpTO(newY) {
        
    //controls the acceleration of the items
        //a: greater = slower (default=4)
        //d: greater = less bounce (default=1.9)
        
    4
        d 
    1.9
        this
    .onEnterFrame = function() {
        
    myYspeed = ((this._y-newY)/a+myYspeed)/d
        this
    ._y -= myYspeed
        
    }

    Secondo me il problema è nelle funzioni, non viene passato correttamente l'oggetto...
    Pls aiutatemi

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.