1
resposta

[Dúvida] Quando clica no botão novo jogo nada acontece

function exibirTextoNaTela(tag, texto) {
let elemento = document.querySelector(tag);
elemento.innerHTML = texto;
}
function exibirMensagemInicial() {
exibirTextoNaTela('h1', 'Jogo do número secreto');
exibirTextoNaTela('p', 'Tente advinhar o número entre 1 e 10!');
}

exibirMensagemInicial();

function verificarChute() {
    let chute = document.querySelector('input').value;
    if (chute == numeroSecreto) {
        exibirTextoNaTela('h1', 'Você acertou!');
        let palavraTentativas = tentativas > 1 ? 'tentativas' : 'tentativa';
        let mensagemTentativas = `Parabéns, você adivinhou o número secreto com ${tentativas} ${palavraTentativas}!`;
        exibirTextoNaTela('p', mensagemTentativas);
        document.getElementById('reiniciar').removeAttribute('disabled');
        }
else {
        if (chute > numeroSecreto) {
            exibirTextoNaTela('p', 'O número secreto é menor!');
        } else {
            exibirTextoNaTela('p', 'O número secreto é maior!');
        } tentativas++;
        limparCampo();
    }
}

function gerarNumeroSecreto() {
    return Math.floor(Math.random() * 10) + 1;
}
let numeroSecreto = gerarNumeroSecreto();
let tentativas = 1;

function limparCampo() {
    document.querySelector('input').value = '';
    document.querySelector('input').focus();
}

function reiniciarJogo() {
    numeroSecreto = gerarNumeroSecreto();
    limparCampo();
    tentativas = 1;
    exibirMensagemInicial();
    document.getElementById('reiniciar').setAttribute('disabled', true);

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Lucas! Como vai?

Com base no que você explicou, parece que o botão “Novo jogo” não está executando a função reiniciarJogo(). Isso pode acontecer se o botão não estiver com o evento onclick configurado no HTML. Verifique se ele está assim: <button id="reiniciar" onclick="reiniciarJogo()" disabled>Novo jogo</button>.

Uma dica interessante para o futuro é criar o evento usando JavaScript em vez do HTML, deixando o código mais organizado.
Veja este exemplo:


let botao = document.getElementById('reiniciar');
botao.addEventListener('click', reiniciarJogo);

Esse código usa addEventListener para executar a função quando o botão for clicado.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!