[editato] ho commesso un errore di valutazione... la modifica che avevo proposto prima dell'edit non va bene... rimane buono solo il resto del messaggio, che comunque non risolve il problema[/editato]

il codice è un po' pesante e non capisco bene come agisca visto che non c'è un esempio, ma la funzione di chiusura già c'è ed è l'ultima dichiarata

ho aggiustato un tantino il codice per renderlo almeno più leggibile, lo riporto tutto
Codice PHP:
var voci = new Array('news','Prodotti','about us','contact','link')
for(var 
0voci.lengthi++){
    var 
i+1;
    
menu['mc'+l].txt.testo voci[i];
}
var 
vel .10;
var 
fri .7;
var 
wid0 menu.mc1.mc._width;
var 
hei0 menu.mc1.mc._height;
var 
velx 0;
var 
vely 0;
var 
bvelx 0;
var 
bvely 0;
function 
eagle(mcwidhei) {
    
velx = ((wid-menu[mc].mc._width)*vel)+(velx*fri);
    
vely = ((hei-menu[mc].mc._height)*vel)+(vely*fri);
    
menu[mc].mc._width += velx;
    
menu[mc].mc._height += vely;
    
menu[mc].sub._width += velx
    
for(var 0voci.lengthi++){
        var 
i+1;
        
menu['mc'+l]._x menu['mc'+i]._x+menu['mc'+i]._width/2+menu['mc'+l]._width/2+2;
    }
    
menu[mc].bt.enabled false
}
_root.onEnterFrame = function(){
    
eagle(j300300);
    (
!= undefined) ? back(b) : null;
    
menu._x = (Stage.width/2-menu._width/2);
}
function 
back(mc){
    
bvelx = ((wid0-menu[mc].mc._width)*vel)+(bvelx*fri);
    
bvely = ((hei0-menu[mc].mc._height)*vel)+(bvely*fri);
    
menu[mc].mc._width += bvelx;
    
menu[mc].mc._height += bvely;
    
menu[mc].sub._width += bvelx
    
(Math.abs(wid0-menu[mc].mc._width)<1) ? delete b null;
    
menu[mc].bt.enabled true