A dúvida é literalmente o título do post. Meu código parece estar igual ao do professor mas, testando aqui, minha bolinha nunca volta para a cor azul (primeira cor, cores[0]) (também desconfio que eu esteja com problema no mouse e isso pode interferir).
Podem me dar uma luz, por favor?
<canvas width= "600" height = "400">
<script>
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle = 'grey';
pincel.fillRect(0, 0, 600, 400);
var cores = ["blue", "red", "green"];
var i = 0;
function desenhaBolinha(evento){
var x = evento.pageX - tela.offsetLeft; // para tirar a "bordinha" antes da tela
var y = evento.pageY - tela.offsetTop;
//para desenhar uma boplinha
pincel.fillStyle = cores[i];
pincel.beginPath();
pincel.arc(x, y, 10, 0, 2*Math.PI);
pincel.fill();
}
function mudaCor() {
i = i+1;
if(i >= cores.lenght){
i = 0;
}
return false;
}
tela.oncontextmenu = mudaCor;
tela.onclick = desenhaBolinha;
</script>