5
respostas

Texto principal do site nao esta aparecendo

Por algum erro que não estou conseguindo encontrar o texto principal do site não aparece mais.. abaixo o codigo do 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 numero secreto"); exibirTextoNaTela("p","Escolha um numero entre 1 e 10"); }

function verificarChute(){

let chute= document.querySelector('input').value; if(chute == numeroSecreto){ exibirTextoNaTela("h1","Acertou!"); let palavraTentativa= tentativas >1? 'tentativas':'tentativa'; let mensagemTentativas=(Voce descobriu o numero secreto com ${tentativas}${palavraTentativa});

    exibirTextoNaTela("p",mensagemTentativas);
}else {
    if(chute>numeroSecreto){
        exibirTextoNaTela("p","O numero secreto é menor");
    }else{
        exibirTextoNaTela("p","O numero secreto é maior");
    }
        tentativas++;
         limparCampo();
        
       }

} esse é o ponto em que parei no codigo.. estou voltando as aulas para ver se acho onde errei mas nao tive exito ate o momento.. abaixo o index 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>
5 respostas

Oi Aline,

Analisando seu código, percebi que a função exibirMensagemInicial() não está sendo chamada em nenhum momento.

Essa função é responsável por exibir o texto inicial do jogo (o título e a instrução) na tela. 😏

Para corrigir isso, você precisa chamar a função exibirMensagemInicial() no início do seu script, após a declaração das variáveis.

Adicione a seguinte linha no seu arquivo 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 numero secreto"); 
    exibirTextoNaTela("p","Escolha um numero entre 1 e 10"); 
}

exibirMensagemInicial(); // Adicione esta linha

function verificarChute(){
    // ... restante do seu código
}

Com essa alteração, o texto principal do site deverá aparecer corretamente. 👍

Para saber mais: Documentação do querySelector - Saiba mais sobre como selecionar elementos HTML com JavaScript.

Continue praticando e explorando as funcionalidades do JavaScript! 🤔

Certo fiz a alteração conforme me indicou.. atualizei e salvei com ctrl s .. mas nao deu certo,continua sem aparecer as mensagens principais do site..

Oi Aline,

Entendo sua frustração por ainda não ter resolvido o problema. 😞

Vamos analisar o que pode estar acontecendo.

  1. Certifique-se de que o caminho para o arquivo app.js no seu index.html está correto e que não há erros de digitação.
  2. Abra o console do seu navegador (geralmente pressionando F12) e verifique se há algum erro de JavaScript.
  3. Verifique se a função gerarNumeroAleatorio() e limparCampo() estão definidas em algum lugar do seu código. Se ela não estiver definida, o código vai gerar um erro e não vai funcionar corretamente. 🤔

Código app.js com as funções gerarNumeroAleatorio() e limparCampo()

let numeroSecreto = gerarNumeroAleatorio();
let tentativas = 1;

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

function exibirMensagemInicial() {
    exibirTextoNaTela("h1", "Jogo do numero secreto");
    exibirTextoNaTela("p", "Escolha um numero entre 1 e 10");
}

exibirMensagemInicial(); // Adicione esta linha

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

    if (chute == numeroSecreto) {
        exibirTextoNaTela("h1", "Acertou!");
        let palavraTentativa = tentativas > 1 ? "tentativas" : "tentativa";
        let mensagemTentativas = `Você descobriu o número secreto com ${tentativas} ${palavraTentativa}`;

        exibirTextoNaTela("p", mensagemTentativas);
    } else {
        if (chute > numeroSecreto) {
            exibirTextoNaTela("p", "O número secreto é menor");
        } else {
            exibirTextoNaTela("p", "O número secreto é maior");
        }
        tentativas++;
        limparCampo();
    }
}

function gerarNumeroAleatorio() {
    return Math.floor(Math.random() * 10 + 1);
}

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

Se você fez todas essas verificações e o problema persistir, compartilhe o código completo novamente para que eu possa analisar mais a fundo.

Para saber mais: Como usar o console do navegador para depurar JavaScript. Este artigo da Mozilla explica como usar o console do navegador para encontrar erros em seu código JavaScript.

Continue praticando e não desista! 💪

tux matrix Caso este post o tenha ajudado, marque-o como solucionado ☑️. Bons Estudos! 🤓

Bom dia infelizmente o problema continua.. abaixo o codigo: let numeroSecreto= gerarNumeroAleatorio(); let tentativas=1;

function exibirTextoNaTela(tag,texto){ let campo= document.querySelector(tag); campo.innerHTML= texto; } function exibirMensagemInicial(){ exibirTextoNaTela("h1","Jogo do numero secreto"); exibirTextoNaTela("p","Escolha um numero entre 1 e 10"); } exibirMensagemInicial();

function verificarChute(){

let chute= document.querySelector('input').value; if(chute == numeroSecreto){ exibirTextoNaTela("h1","Acertou!"); let palavraTentativa= tentativas >1? 'tentativas':'tentativa'; let mensagemTentativas=(Voce descobriu o numero secreto com ${tentativas}${palavraTentativa});

    exibirTextoNaTela("p",mensagemTentativas);
}else {
    if(chute>numeroSecreto){
        exibirTextoNaTela("p","O numero secreto é menor");
    }else{
        exibirTextoNaTela("p","O numero secreto é maior");
    }
        tentativas++;
         limparCampo();
        
       }

}

  function gerarNumeroAleatorio(){
   return Math.floor(Math.random()*10+1);

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

Oi Aline,

Analisando seu código, percebi que há um erro de sintaxe na linha que define a mensagem de tentativas. 🤔

let mensagemTentativas=(Voce descobriu o numero secreto com ${tentativas}${palavraTentativa});

O correto seria usar template literals (strings delimitadas por crases) para interpolar variáveis, e não parênteses:

let mensagemTentativas = `Você descobriu o número secreto com ${tentativas} ${palavraTentativa}`;

Para saber mais: Template literals (Template strings) - A documentação da Mozilla sobre template literals, que explica como usar strings com interpolação de variáveis em JavaScript.

Continue praticando e explorando as funcionalidades do JavaScript! 🧐