2
respostas

Não consigo fazer com que o som saia

function tocaSom (idElementoAudio){
    document.querySelectorAll(idElementoAudio).play();
};

const listaDeTeclas = document.querySelector('.tecla');

let contador = 0;


while (contador < listaDeTeclas.length) {

    const tecla = listaDeTeclas[contador];
    const instrumento = tecla.classList[1];

    const idAudio = `#som_${instrumento}`;

    console.log(idAudio);

    tecla.onclick = function(){
        tocaSom(idAudio);
    };

    contador = contador + 1;

    console.log(contador);
}
2 respostas

Olá, Pedro! Estava dando uma olhada no seu código e vi que na função tocaSom você colocou o "document.querySelector" com o "All" ali no final. Nesse caso, o All deve ser retirado.

Já na sua const listaDeTeclas, acontece o contrário. Você precisa acrescentar o "All" no seu "document.querySelector" para que ele identifique tudo o que tiver a ".tecla" como classe. Testei aqui e funcionou.

Não sei se ficou muito clara a minha explicação, ainda estou no início dos estudos, mas espero ter ajudado hahaha.

function tocaSom (idElementoAudio){
    document.querySelector(idElementoAudio).play();
};

const listaDeTeclas = document.querySelectorAll('.tecla');

Vlw, Renan!! estava com esse mesmo erro ! Um detalhe que revisei e não me atentei !