Ich hab mal einen Fork ohne
requestAnimationFrame
erstellt. Im Firefox sehe ich genau das von mir beschriebene unerwünschte Verhalten. Chrome scheint etwas anders zu ticken.
Hmm... ich kann hier keinen Unterschied erkennen, was auch meiner Erwartungshaltung entspricht. Aber das muss nix bedeuten. An solchen Stellen habe ich schon oft viel mystische Magie seitens der Browserimplementationen beobachtet.
Wirklich schlüssig scheint es mir dennoch nicht.
Schlüssig wäre IMHO: auf das load-event des images warten und dann erst switchen. Bauchgefühl: mit dem requestAnimationFrame emulierst Du den Effekt ohne Load-Handler, den Du in Deinem Setup beobachten kannst.
Daran, für diesen Test den Browsercache auszuschalten, hast du aber gedacht?
Ja, klar. Mit und ohne :-)