Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Solução para o desafio de troca de cor do Robotron 200

Olá,

Para resolver o desafio de mudar a cor do Robotron eu fiz os seguintes passos:

  • Adicionei um data-attribute na imagem do robô
        <section class="robotron">
            <img class="robo" src="img/robotron.png" alt="Robotron" id="robotron" data-robo>
            <figcaption class="titulo">ROBOTRON <br>2000</figcaption>
        </section>
  • Depois o peguei o elemento no arquivo JS
const roboImg = document.querySelector("[data-robo]")
  • Daí eu inseri as imagens dos robôs, mudei os nomes e criei um array com os nomes.
  • Peguei o src do elemento para saber qual a imagem que está sendo exibida
  • usei o split pra me retornar o nome do arquivo e o indexOf para pegar a posição dele no meu array
  • se for a última posição ele retorna zero, senão pega o index + 1
  • com esse valor ele coloca a próxima imagem no src do robô
roboImg.addEventListener("click", (evento) => {

   let corAtual = evento.target.src.split("img");

   let novaCor = robotron.indexOf("img"+corAtual[1]) === 5 ? 0 : robotron.indexOf("img"+corAtual[1]) + 1

   evento.target.src = robotron.at(novaCor) 
})

const robotron = ["img/robotron.png","img/Robotron-Branco.png","img/Robotron-Amarelo.png", "img/Robotron-Preto.png", 
    "img/Robotron-Rosa.png","img/Robotron-Vermelho.png"]

Esse código faria sentido em um ambiente de produção? Obrigado

1 resposta
solução!

Oi Raul, tudo bem?

O código que você apresentou parece estar funcionando corretamente para o desafio de troca de cor do Robotron 2000.

Parabéns por praticar! Continue os bons estudos.

Um abraço.