Olá!
Alguém saberia dizer o motivo do meu .toggleClass(); apenas adicionar a classe, sem conseguir removê-la?
var tempoInicial = $("#tempo-digitacao").text();
var campo = $("#campo-digitacao");
$(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 qntPalavras = conteudo.split(/\S+/).length - 1;
$("#contador-palavras").text(qntPalavras);
var qtdCaracteres = conteudo.length;
$("#contador-caracteres").text(qtdCaracteres);
});
}
function inicializaCronometro() {
var tempoRestante = $("#tempo-digitacao").text();
campo.one("focus", function() {
$("#botao-reiniciar").attr("disabled",true);
var cronometroID = setInterval(function() {
tempoRestante--;
$("#tempo-digitacao").text(tempoRestante);
if (tempoRestante < 1) {
campo.attr("disabled", true);
$("#botao-reiniciar").attr("disabled", false);
clearInterval(cronometroID);
campo.toggleClass("campo-desativado");
}
}, 1000);
});
}
function reiniciaJogo() {
campo.attr("disabled", false);
campo.val("");
campo.toggleClass("campo-desativado");
$("#contador-palavras").text("0");
$("#contador-caracteres").text("0");
$("#tempo-digitacao").text(tempoInicial);
inicializaCronometro();
}
$("#botao-reiniciar").click(reiniciaJogo);
HTML:
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title>Alura Typer</title>
<link rel="stylesheet" href="css/libs/materialize.min.css">
<link rel="stylesheet" href="css/estilos.css">
</head>
<body>
<div class="container">
<h1>Alura Typer</h1>
<p class="frase">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<ul class="informacoes">
<li><span id="tamanho-frase">19</span> palavras</li>
<li><span id="tempo-digitacao">15</span> segundos</li>
</ul>
<textarea id="campo-digitacao" rows="8" cols="80"></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>
</div>
<script src="js/jquery.js"></script>
<script src="js/main.js"></script>
</body>
</html>
CSS:
#campo-digitacao {
font-size: 20px;
height: 130px;
}
.frase {
font-size: 20px;
text-align: justify;
}
.campo-desativado {
background-color: lightgray;
}
Obrigado!