Ich werde versuchen, bei meinen nächsten Anwendungen (Spielen) die Animationen anders zu steuern. Teilweise mache ich das ja schon heute so, z.B. bei einigen Zeitbalken.
Das ganze mit Intervallen anzusteuern kommt daher, da meine ersten Versuche, dies ausführungsabhängig zu machen, irgendwie scheiterten.
Ich kann nicht einfach eine Schleife durchlaufen und schauen, wie lange das gebraucht hat, da Bilder i.d.R. asynchron geschrieben werden. D.h., dass die Schleife durch ist, das Bild ist aber noch nicht auf dem Bildschirm. Jetzt muss ich einen Event-Handler einsetzen, der genau dann feuert, wenn das Bild auch tatsächlich fertig ist. Mit OnLoad geht es schon einmal nicht, da hier schon abgefeuert wird, wenn das Bild komplett geladen ist und nicht erst, wenn es fertig rausgeschrieben ist. Die Complete-Abfrage arbeitet dagegen richtig, allerdings nur, wenn sie in einem DIV liegt, das nicht hidden ist.
Als weiteren und damals maßgeblich Nachteil sah ich, dass ich so zwar ziemlich exakt eine Gesamtzeit vorgeben konnte, mir aber dabei teilweise ruckelnde Bewegungen einhandelte. Logisch, denn die Verschiebung war dann nicht permanent +1px sondern z.B. bei einem langsamen Rechner: +3, +3, +5, +3, ... Das sah nicht mehr flüssig aus und mir war aber eine gleichmäßige, aber durchaus langsamere Bewegung, lieber.
Ich werde es mir auf jeden Fall noch Mal zu Gemüte führen, denn auch die Browser haben in den letzten Jahren gewaltige Fortschritte gemacht (in Bezug auf die JS-Geschwindigkeit).
LG Yogilein