Melhore a animação de JPG quadro a quadro em quadro a quadro para armazenar totalmente em cache antes de animar

Estou tentando construir em cima deste ótimo scriptAqui que foi respondida por Phrogz.

O problema é que a animação não será reproduzida até que todas as imagens tenham sido armazenadas no navegador. Portanto, na primeira carga, não será reproduzido. Apenas em uma recarga.

O ponto de tentar fazê-lo é tentar fornecer uma solução alternativa para que uma animação seja reproduzida automaticamente, uma vez que esse recurso não funciona nos navegadores do iOS.

Aqui está o código que estou usando:

         function draw() { 
            var imgNumber = 1;
            var lastImgNumber = 121;

            var ctx = canvas.getContext('2d');
            var img = new Image;
            img.onload = function(){
            ctx.clearRect( 0, 0, ctx.canvas.width, ctx.canvas.height );
            ctx.drawImage( img, 0, 0 );
            };
            var timer = setInterval( function(){
              if (imgNumber>lastImgNumber){
                clearInterval( timer );
              }
             else{
                img.src = "jpg_80/t5_"+( imgNumber++ )+".jpg";
              }
            }, 1000/24 ); //Draw at 24 frames per second
          }

Eu tentei adicionar isso antes da tag body de fechamento:

                 window.onload = draw; 

No entanto, acredito que o código teria que ser alterado dentro da função draw (). Algum lugar na função setInterval?

questionAnswers(2)

yourAnswerToTheQuestion