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

[Bug] Ativar botão Novo Jogo

Eu estou seguindo os passos da materia, porem não estou conseguindo fazer o botão "Novo Jogo", funcionar.

let listaDeNumerosSorteados = []; let numeroLimite = 10; 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 palavraTentantiva = tentativas > 1 ? 'tentativas' : 'tentativa';
    let mensagemTentativas = `Você descobriu o numero secreto com ${tentativas} ${palavraTentantiva}!`;
    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() { let numeroEscolhido = parseInt(Math.random() * numeroLimite + 1); let quantidadeDeElementosNaLista = listaDeNumerosSorteados.length;

if (quantidadeDeElementosNaLista == numeroLimite) { listaDeNumerosSorteados = [];

} if (listaDeNumerosSorteados.includes(numeroEscolhido)) { return gerarNumeroAleatorio(); } else { listaDeNumerosSorteados.push(numeroEscolhido); return numeroEscolhido; }}

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

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

Alguem consegue me ajudar a entender o porque o botão "NOVO JOGO" não estarfuncionando?

8 respostas

Você tem o código fonte no github? poderia compartilhar?

Não tenho, e nem sei como faço para colocar o codigo fonte no github...

Envie o HTML no caso, e todo o js, para eu tentar ajuda-la.

Se voce conseguir enviar o codigo js completo, fica mais facil encontrar o erro, pode fazer isso?

Esse é meu codigo js completo, espero que te ajude a encontrar o erro

let tentativas = 1
let numeroSecreto = gerarNumeroAleatorio();

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

exibirTextoNaTela('h1', 'Jogo do número secreto');
exibirTextoNaTela('p', 'Escolha um número entre 1 e 10');

function verificarChute() {
    let chute = document.querySelector('input').value;
    if (numeroSecreto == chute){
        exibirTextoNaTela('h1', 'Acertou!');
        let palavraTentativa = tentativas > 1 ? 'tentativas' : 'tentativa';

        let mensagemTentativas = `Parabéns, voce acertou o numero secreto com ${tentativas} ${palavraTentativa}`;
        
        exibirTextoNaTela('p', mensagemTentativas);
        document.getElementById('reiniciar').removeAttribute('disabled');
    }
    else{ if(numeroSecreto > chute){
        exibirTextoNaTela('h1', 'Errou !')
        exibirTextoNaTela('p', `aqui vai uma dica para voce: o numero secreto é maior que ${chute}`);
    } else{
        exibirTextoNaTela('h1', 'Errou !')
        exibirTextoNaTela('p', `aqui vai uma dica para voce: o numero secreto é menor que ${chute}`);       
    }
        tentativas ++;
        limparCampo();}}


function gerarNumeroAleatorio() {
    return parseInt(Math.random() * 10 + 1);
}
function limparCampo(){
    chute = document.querySelector('input');
    chute.value = '';
}
function reiniciarJogo(){
    numeroSecreto;
    limparCampo();
    tentativas= 1;
}
solução!

Izaque Liborio Da Silva https://drive.google.com/drive/folders/1abIi0KOgOxCGK-vuiBODLvFLNX7ceigY?usp=drive_link

Veja se consegue ver assim.. caso não consiga, estou te enviando as imagens. JS: Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade HTML Insira aqui a descrição dessa imagem para ajudar na acessibilidade Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Talita, no seu arquivo HTML, o botão de novo jogo está com o atributo 'disabled' incluso, por isso não funciona, esse atributo deixa o botão inativo, basta remover e funcionará normalmente:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Chocadaaaaa

Deu certo!

Muito obrigada!!!

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