ciao, ho implementato una funzione di movimento quando l'utente apre un menu ad albero
Codice PHP:
function Animatore(var_obj){
this.obj = var_obj
this.AltezzaFinale = var_obj.offsetHeight;
this.AltezzaCorrente = 1;
this.resizeIt = resize_It(var_obj, this.AltezzaCorrente, this.AltezzaFinale);
}
var t = new Array()
function resize_It(oggetto, altezzaCorrente, altezzaFinale) {
altezzaCorrente += 5 ;
oggetto.style.height = altezzaCorrente + "px"
if (altezzaCorrente < altezzaFinale) {
t[t.length] = setTimeout(function () {resize_It(oggetto, altezzaCorrente, altezzaFinale); return}, 5);
}
else {
oggetto.style.overflow = "visible";
for (i = 0; i < t.length; i++) {
clearTimeout(t[i])
}
}
return
}
che poi chiamo con
Codice PHP:
anim = new Animatore(document.getElementById("div" + var_oggetto + "_" + var_id))
anim.resizeIt()
funziona tutto, mi apre il ramo dell'albero del meno con una sensazione di movimento verticale, ma poi il cursore resta a clessidra e non prosegue nell'esecuzione; testando il flusso con degli alert() ho visto che non prosegue oltre l'istruzione anim.resizeIt()
suggerimenti ?