1
resposta

solução com funções nulas

    <<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);

        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;*/

        // vamos agora reduzir o código utilizando funções nulas "function()"

        tela.onmousedown = function() {

            desenha = true

        }

        tela.onmouseup = function() {

            desenha = false

        }


    </script>
1 resposta

Olá, Marcelo! Tudo bem?

Parabéns pelo seu empenho, seu projeto ficou excelente!

Caso tenha alguma dúvida não deixe de compartilhar.

Continue praticando, bons estudos e até mais.