[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 i = 0; i < voci.length; i++){
var l = 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(mc, wid, hei) {
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 i = 0; i < voci.length; i++){
var l = 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(j, 300, 300);
(b != 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
}