Salve a tutti, volevo fare un oggetto per gestire semplici animazioni, del tipo spostare un box tra due punti.
Ma indovinate un po', non mi funziona.... Riducendo al minimo sono arrivato a queste due funzioni :
codice:
function Motor(){
this.interval = 20;
this.timer = null;
this.animation = null;
this.doSingleStep = function(){
this.animation.doStep();
}
this.run = function(){
this.timer = setInterval(this.doSingleStep,this.interval);
}
this.stop = function(){
clearInterval(this.timer);
}
this.addAnimation = function(anim){
this.animation = anim;
}
}
function createAnimation(from,to,id){
this.from = from;
this.to = to;
this.id = id;
this.doStep = function(){
document.getElementById('box').style.left = (document.getElementById('box').style.left+ 10) +'px';
}
}
var mainmotor = new Motor();
mainmotor.addAnimation(new createAnimation(0,100,'box'));
mainmotor.run();
In sostanza : la prima registra una animazione e chiama il relativo metodo doStep(), la seconda rappresenta proprio l'animazione che deve essere eseguita...
Qualcuno ha delle idee ? Perchè nun funzia ?
Ciao e grazie