Em um vídeo passado, vi no fórum uma dúvida de como inserir o comando de enter ao invés de clicar no botão criado. Peguei a resposta do fórum e coloquei no meu código para testar. Tenho duas dúvidas, gostaria de saber como ela está funcionando(parte entre os comentários no código)? E também notei que as vezes clicando enter, o alert de certo ou errado aparece rapidamente e some, ou sequer aparece, por que isso ocorre?
<meta charset = "UTF-8">
<input>
<button>Compare com o segredo</button>
<script>
var entrada = document.querySelector("input");
entrada.focus();
var segredos = [2,4,6,8];
// Essa parte não foi entendida
document.addEventListener('keypress', function(e){
if(e.which == 13){
verifica();
}
},false);
// Fim da parte não entendida
function verifica(){
var achou = false;
for(var posicao = 0; posicao < segredos.length; posicao++){
if(entrada.value == segredos[posicao]){
alert("Você acertou!");
achou = true;
break;
}
}
entrada.value = "";
entrada.focus();
if(achou == false){
alert("Você errou.");
}
}
var botão = document.querySelector("button");
botão.onclick = verifica;
</script>