Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Meu código não está funcionando

Meu código não está funcionando. Analizei parte a parte com o gabarito, mas, o que escrevi não funciona.

<canvas width="600" height="400"></canvas>

<script>
   var tela = document.querySelector('canvas');
   var pincel = tela.getContext('2d');

   pincel.fillStyle = 'grey';
   pincel.fillRect(0, 0, 600, 400);

   var desenha = false;

   function desenhaCirculo(evento){

      if(desenha) {
         var x = evento.pageX - tela.offsetLeft;
         var y = evento.pageY - tela.offsettop;
         pincel.fillStyle = 'blue';
         pincel.beginPath();
         pincel.arc(x, y, 10, 0, 2* 3.14);
         pincel.fill();       
      }

       console.log(x + ',' + y);

   }

   tela.onmousemove = desenhaCirculo;

   function habilitaDesenhar() {

      desenha = true;

   }

   function desabilitaDesenhar() {

      desenha = false;
   }


   tela.onmousedown = habilitaDesenhar;

   tela.onmouseup = desabilitaDesenhar;
</script> 
2 respostas
solução!

O que aconteceu foi que você usou uma letra minúscula no lugar de uma maiuscula:

         var y = evento.pageY - tela.offsettop;

tela.offSetTop tem um "T" maiusculo no "Top".

Putz! Que mole. Agora foi. Valeu!!