De repente os meus navegadores pararam de carregar a página web se ela tiver código JavaScript, quando eu removo o código a página carrega normalmente. Qual poderia ser o problema?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
De repente os meus navegadores pararam de carregar a página web se ela tiver código JavaScript, quando eu removo o código a página carrega normalmente. Qual poderia ser o problema?
Oi, coloque seu código o aqui
Primeiro tente analisar o erro apresentado no "Console" da "Ferramentas do Desenvolvedor" (F12) do seu navegador
Esse é o código JavaScript:
function playSound(idKeyAudio) {
document.querySelector(idKeyAudio).play();
}
const KeysList = document.querySelectorAll('.tecla');
let counter = 0;
let keysLength = KeysList.length;
while (counter < keysLength) {
const key = KeysList[counter];
const instrument = key.classList[1];
//template string
const idSound = `#som_${instrument}`;
key.onclick = function () {
playSound(idSound);
};
key.onkeydown = function () {
key.classList.add('ativa');
};
}
Tentei checar o console, mas a página carrega infinitamente e não aparece nada.
O while está em loop infinito que trava a página
O counter é sempre 0
Tem que inserir um incremento do counter
while (counter < keysLength) {
const key = KeysList[counter];
const instrument = key.classList[1];
//template string
const idSound = `#som_${instrument}`;
key.onclick = function () {
playSound(idSound);
};
key.onkeydown = function () {
key.classList.add('ativa');
};
counter++; // incremento inserido
}
Nossa, devo ter apagado o counter do loop em algum momento e nem percebi, valeu!