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

[Projeto] Usando os botões com diferentes teclas do teclado

Algumas Alterações no projeto

Se quiser pode verificar as alterações por esse links

https://andrewmoreira91.github.io/Midi-Alura/ Link do projeto funcionando

https://github.com/AndrewMoreira91/Midi-Alura link do GitHub

Fiz umas pequenas alterações no projeto, coloquei para cada botão do Midi ser acionado por uma tecla específica do teclado.

const listaKeys = ['t', 'y', 'u', 'g', 'h', 'j', 'b', 'n' ,'m']

for (let i=0; i < listaTeclas.length; i++) {
    const tecla = listaTeclas[i];
    const nameClass = tecla.classList[1];
    const idAudio = `#som_${nameClass}`;

    document.addEventListener('keydown', function(event) {
        if (event.key === listaKeys[i]) {
            tecla.classList.add('ativa');
            tocaSom(idAudio)
        }
    })

E também coloquei uma condição na função tocaSom, onde ser o som já estiver tocando ele reinicia o som para o começo

function tocaSom (seletorAudio) {
    const audio = document.querySelector(seletorAudio)
    if (audio == null || audio.localName != 'audio') {
        console.log('Elemento não encotrado ou seletor inválido')
    } else {
        if (audio.paused) {
            audio.play();
        } else {
            audio.currentTime = 0;
        }
    }
}
1 resposta
solução!

Olá, Andrew!

Você fez um ótimo trabalho modificando o projeto original. A ideia de associar as teclas do teclado aos botões do Midi é muito interessante e adiciona uma nova camada de interatividade ao projeto, principalmente para computadores facilitando muito a interação meus parabens.

Quanto ao seu código, a lógica ficou ótima e de fácil compreensão. Parabéns!

Continue explorando, se desafiando e aprimorando cada vez mais os seus projetos.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software