Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Botão reiniciar não está funcionando

Código app.js let numeroSecreto = gerarNumeroAleatorio(); let tentativas = 1;

function exibirTextoNaTela(tag, texto) { let campo = document.querySelector(tag); campo.innerHTML = texto; }

function exibirMensagemInicial() { exibirTextoNaTela("h1", "Jogo do Número Secreto"); exibirTextoNaTela("p", "Escolha um número entre 1 e 10"); }

exibirMensagemInicial();

function verificarChute() { let chute = document.querySelector("input").value; if (chute == numeroSecreto) { exibirTextoNaTela("h1", "Acertou!"); let palavraTentativas = tentativas > 1 ? 'tentativas' : 'tentativa'; let mensagemTentativas = Você descobriu 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 gerarNumeroAleatorio() { return parseInt(Math.random() * 10 + 1); }

function limparCampo() { let chute = document.querySelector("input"); chute.value = " "; }

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

Código HTML

<div class="container">
    <div class="container__conteudo">
        <div class="container__informacoes">
            <div class="container__texto">
                <h1></h1>
                <p class="texto__paragrafo"></p>
            </div>
            <input type="number" min="1" max="10" class="container__input">
            <div class="chute container__botoes">
                <button onclick="verificarChute()" class="container__botao">Chutar</button>
                <button onclick="reiniciarJogo()" id="reiniciar" class="container__botao" disabled>Novo jogo</button>
            </div>
        </div>
        <img src="./img/ia.png" alt="Uma pessoa olhando para a esquerda" class="container__imagem-pessoa" />
    </div>
</div>




<script src="app.js" defer></script>
2 respostas
solução!

Oi Thamirys,

O problema está na função reiniciarJogo(). 🔄

Você está redefinindo o número secreto, limpando o campo de input, resetando as tentativas e exibindo a mensagem inicial.

Porém, falta um detalhe crucial: você precisa remover o atributo disabled do botão de "Chutar" para que o jogo possa ser reiniciado.

Para corrigir, adicione a seguinte linha na função reiniciarJogo():

document.querySelector('button').removeAttribute('disabled');

Essa linha irá habilitar o botão de "Chutar" novamente.

Seu código corrigido ficaria assim:

function reiniciarJogo() {
    numeroSecreto = gerarNumeroAleatorio();
    limparCampo();
    tentativas = 1;
    exibirMensagemInicial();
    document.getElementById("reiniciar").setAttribute("disabled", true);
    document.querySelector('button').removeAttribute('disabled');
}

🎓 Para saber mais: Documentação sobre o método removeAttribute

Continue praticando e explorando a lógica de programação! 🧐

📌 Nota: Otimize seus estudos com o guia "Como turbinar seus estudos utilizando o fórum" e insira o código usando a ferramenta do fórum. como inserir bloco de código

Funcionou, obrigada!