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

Não consigo desabilitar o menu contextual

A troca de cores funciona perfeitamente, porém, não consigo desabilitar o menu ao apertar com o botão direito mesmo colocando return false.

<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 corCirc = ["blue", "green", "red"];
    var numCor = 0;

    function PaintCircle(evento)
    {

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop; 
        pincel.fillStyle = corCirc[numCor];
        pincel.beginPath();
        pincel.arc(x, y, 10, 0, 2*3.14);
        pincel.fill();

    }


    function MudaCor()
    {

        numCor++;


        if(numCor > 2)
        {

            numCor = 0;

        }

        alert("Cor atual: " + corCirc);
        return false;

    }


    tela.onclick = PaintCircle; 

    tela.oncontextmenu = MudaCor;

</script>
2 respostas
solução!

oI Gabriel de Moraes Você tá clicando dentro do canvas ou fora ? Porque se você clicar fora vai aparecer normalmente o evento só não vai acontecer no canvas.

E eu sugiro mais essa alteração para mostrar a cor atual:

 alert("Cor atual: " + corCirc[numCor]);
        return false;

Espero ter ajudado e bons estudos.

Estava clicando dentro do Canvas mesmo. O alert acabou resolvendo o problema!!!