O meu codigo está com um pequeno problema, tentei resolver mas não consegui, quando clico no botão para zerar o jogo, o contador retorna pra 10 mas no proximo segundo continua a contagem de onde parou, cada vez que clico no botão de zerar ele volta pra 10 e continua descendo até 0. Já revi o código e aparentemente está idêntico ao do professor.
var tempoInicial = $("#tempo-digitacao").text();
var campo = $(".campo-digitacao");
$(
function(){
atualizaFrase();
inicializaContadores();
inicializaCronometro();
$("#botao-reiniciar").click(reiniciaJogo);
});
function atualizaFrase() {
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);
conteudo = conteudo.replace(/ /g,'');
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();
}