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

Problema com exibição de textos na tela

No vídeo, a cada vez que o usuário erra, é exibido uma mensagem. Diferente do meu código, que está exibindo todas as mensagens de uma vez, depois da última pergunta do prompt. O que há de errado?


<script>

    function pulaLinha() {

        document.write("<br>");
        document.write("<br>");
    }

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
    }

    var numeroPensado = Math.round(Math.random() * 10);

    var tentativas = 1;

    while(tentativas <= 3) {

        var chute = parseInt(prompt("Digite seu chute!"));

        if(chute == numeroPensado) {

        mostra("Você ACERTOU, o número pensado era " + numeroPensado);
        break;

        } else {

        mostra("Você ERROU!");
        }

     tentativas++;
    }   

    mostra("FIM");

</script>
3 respostas

Boa noite, Luciano! Como vai?

Qual é o problema que ocorre com o seu código? Vc poderia descrever para que eu possa te ajudar?

DICA: Sempre que for postar um código, utilize o botão "inserir código" e o cole no local indicado para que o código seja postado com a formatação correta e facilite na hora de entender o código.

Grande abraço e bons estudos!

solução!

Oi Luciano, voltei, bom isso tá acontecendo por que, com as recentes atualizações, o Google Chrome agora só mostra as mensagens do document.write() realizadas dentro de um loop, somente quando a página for carregada completamente, isto é, quando o loop termina.

  • Neste caso, para efeito de aprendizagem, utilize alert() no lugar de document.write().

A única mudança seria essa:

function mostra(frase) {

        alert(frase);
        pulaLinha();
    }

Caso persista alguma dúvida a respeito desse exercício pode perguntar aqui mesmo ou se você não tiver mais nenhuma dúvida a respeito você pode marcar uma resposta como solução, finalizando assim esse tópico.Espero ter ajudado. Bons estudos.

Ah, entendi! Obrigado! Solucionado o problema!