Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

no consigo reiniciar el valor del array al índice inicial [0]

Hola queridos Front End, es mi primer posteo en el foro y es para resolver una duda, respecto el ejercicio de los círculos de colores: Explico, todo sale bien hasta que llego al último color pero no puedo resetar el loop, para que empiece de nuevo con el color azul. dejo mi código esperando una pista o sugerencia, o que alguien me ayude a identificar mi error apra poder solucionarlo. Gracias y saludos a todos, Feliz año nuevo!!! Nota: no hacer caso a los comentarios en el código, son reminisencias de soluciones alternativas que no conseguí resolver, jejejejjee.

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

<script>

    var pantalla = document.querySelector("canvas");
    var pincel = pantalla.getContext("2d");    
    pincel.fillStyle = "grey";
    pincel.fillRect(0,0,600,400);
    var colores = ["blue", "red", "green", "yellow"];
    var indiceColorActual = 0;

    function dibujarCirculo(evento){
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;    
        pincel.fillStyle = colores[indiceColorActual];
        pincel.beginPath();
        pincel.arc(x,y,10,0,2*3.14);
        pincel.fill();
        console.log(x + "," + y); 

    }

    pantalla.onclick = dibujarCirculo;

    function alterarColor(evento) {


        while (indiceColorActual < colores.length) {
            indiceColorActual ++   
            pincel.fillStyle = colores[indiceColorActual];
            break;
            console.log();

        }
        //var color = ["blue", "red", "green"]
        //for (i =0; i<color.length; i++){



        //}

        alert("Funcionó");
        return false;
    }
    if (indiceColorActual= colores.length){
        indiceColorActual = 0;
        }

    pantalla.oncontextmenu = alterarColor;

</script> 
1 respuesta

El if está afuera de la función alterar Color además ese pincel.fillStyle después de la iteración esta demás no es necesario ya que la función dibujar circulo ya lo hace