Quando rodo o programa a primeira bandeira demora 1 segundo (o tempo que eu coloquei no intervalo entre elas) para aparecer, enquanto isso a tela fica em branco. É assim mesmo ou teria que usar outro código para ela aparecer assim que recarregasse a página?
<script>
function bandeiraBrasil(){
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle = 'green';
pincel.fillRect(0,0,600,400);
pincel.fill();
pincel.fillStyle ='yellow';
pincel.beginPath();
pincel.moveTo(300, 50);
pincel.lineTo(50, 200);
pincel.lineTo(550, 200);
pincel.fill();
pincel.beginPath();
pincel.moveTo(50, 200);
pincel.lineTo(300, 350);
pincel.lineTo(550, 200);
pincel.fill();
pincel.fillStyle = 'blue';
pincel.beginPath();
pincel.arc(300,200,100,0,2*3.14);//primeiro é eixo x, eixo y, raio, angulo, e PI.
pincel.fill();
}
function bandeiraAlemanha(){
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle = 'black'
pincel.fillRect(0,0,600,133);
pincel.fillStyle = 'red';
pincel.fillRect(0,133,600,133);
pincel.fillStyle = 'yellow';
pincel.fillRect(0,266,600,133);//NÃO PRECISA DE PINCEL.FILL();
}
var mostraBrasil =true;
function trocaBandeira(){
if (mostraBrasil==true){
bandeiraBrasil();
mostraBrasil=false;
}
else{
bandeiraAlemanha();
mostraBrasil = true;
}
}
setInterval(trocaBandeira,1000);
</script>