Olá depois de fazer a divisão semântica do código, o os contadores não estão funcionando Já pesquisei e não encontrei o erro.
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title>Alura Typer</title>
</head>
<body>
<h1>Alura Typer</h1>
<p class="frase">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<ul class="informacoes">
<li><span id="tamanho-frase">5</span> palavras</li>
<li><span id="tempo-digitacao">10</span> segundos</li>
</ul>
<textarea class="campo-digitacao" rows="8" cols="40"></textarea>
<button id="botao-reiniciar">Reiniciar Jogo</button>
<ul>
<li><span id="contador-caracteres">0</span> caracteres</li>
<li><span id="contador-palavras">0</span> palavras</li>
</ul>
<script src="js/jquery.js"></script>
<script src="js/main.js"></script>
</body>
</html>
Main.js
var tempoInicial = $("#tempo-digitacao").text();
var campo = $(".campo-digitacao");
$(document).ready(function(){
atualizaTamanhoFrase();
inicializaContadores();
inicializaCronometro ();
$("#botao-reiniciar").click(reiniciaJogo);
});
function atualizaTamanhoFrase {
var frase = $(".frase").text();
var numPalavras = frase.split(" ").length;
var tamanhoFrase = $("#tamanho-frase");
tamanhoFrase.text(numPalavras);
}
function inicializaContadores {
campo.on("input",function(){
var conteudo = campo.val();
var qtdPalavras = conteudo.split(/\S+/).length - 1;
$("#contador-palavras").text(qtdPalavras);
var qtdCaracteres = conteudo.length;
$("#contador-caracteres").text(qtdCaracteres);
});
}
function inicializaCronometro {
var tempoRestante = $("#tempo-digitacao").text();
campo.one("focus",function(){
var cronometroID = setInterval(function(){
tempoRestante--;
$("#tempo-digitacao").text(tempoRestante);
if(tempoRestante < 1){
campo.attr("disabled",true);
clearInterval(cronometroID);
}
},1000);
});
}
function reiniciaJogo(){
campo.attr("disabled",false);
campo.val("");
$("#contador-palavras").text("0");
$("#contador-caracteres").text("0");
$("#tempo-digitacao").text(tempoInicial);
inicializaCronometro();
}