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

Não adiciona placar

Olá pessoal, alguem pode me ajudar, meu codigo não esta adicionando no placar, quando dou console.log parece erro nas linhas 52/61/98 no entanto não encontrei erro algum...

var tempoInicial = $("#tempo-digitacao").text();
var campo = $(".campo-digitacao");


$(function(){
    atualizaFrase();
    inicializaContadores();
    inicializaCronometro();
    inicializaMarcadores();
    $("#botao-reiniciar").click(reiniciaJogo);
});

function atualizaFrase() {

    var frase = $(".frase").text();
    var numPalavras = frase.split(" ").length;

    var tamanhoFrase = $("#tamanho-frase");
    tamanhoFrase.text(numPalavras);

}

var campo = $(".campo-digitacao");

function inicializaContadores() {

    campo.on("input", function(){
        var conteudo = campo.val();

        var qtdPalavras = conteudo.split(" ").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) {
                clearInterval(cronometroID);

                /*campo.attr("disabled", true);
                campo.toggleClass("campo-desativado");*/

                finalizaJogo();
            }
        }, 1000);
    });
}

function finalizaJogo() {
    campo.attr("disabled", true);
    campo.toggleClass("campo-desativado");
    inserePlacar();

}

function inicializaMarcadores() {
    var frase = $(".frase").text();
    campo.on("input", function() {
        var digitado = campo.val();
        var comparavel = frase.substr(0 , digitado.length);

        if(digitado == comparavel) {
            campo.addClass("borda-verde");
            campo.removeClass("borda-vermelha");
        } else {
            campo.addClass("borda-vermelha");
            campo.removeClass("borda-verde");
        }
    });
}

function reiniciaJogo() {

    campo.attr("disabled", false);
    campo.val("");
    $("#contador-palavras").text("0");
    $("#contador-caracteres").text("0");
    $("#tempo-digitacao").text(tempoInicial);

    inicializaCronometro();
    campo.toggleClass("campo-desativado");
    campo.removeClass("borda-verde");
    campo.removeClass("borda-vermelha");
};


function inserePlacar() {
    /*var placar = $(".placar");*/
    var corpoTabela = placar.find("tbody");
    var usuario = "Seu-nome";
    var numPalavras = $("#contador-palavras").text();

    var linha = novaLinha(usuario, numPalavras);

    /*corpoTabela.append(linha);*/
}

function novaLinha(usuario, numPalavras) {
    var linha = $("<tr>");
    var colunaUsuario = $("<td>").text(usuario);
    var colunaPalavras = $("<td>").text(palavras);
    var colunaRemover = $("<td>");

    var link = $("<a>").attr("href", "#").addClass("botao-remover");
    var icone = $("<i>").addClass("small").addClass("material-icons").text("delete");

    link.append(icone);

    colunaRemover.append(link);

    linha.append(colunaUsuario);
    linha.append(colunaPalavras);
    linha.append(colunaRemover);

    return linha;

    corpoTabela.append(linha);
}
3 respostas

Oi, Gabriel, tudo bem?

Quais mensagens de erro aparecem no console referente as linhas? Essas mensagens irão nos ajudar a analisar esses erros. Aguardo :}

Laís, aparece que tem um erro nas linhas 52, 61 e 98 porém eu não encontro nenhum erro nessas linhas

solução!

Oi, Gabriel, tudo bem?

Utilizei o projeto base do curso para testar e substitui com o código que você nos disponibilizou acima, você verificou as classes e id do html estão exatamente iguais ao aquivo main.js?

Aqui vai os prints do código e do placar: https://imgur.com/a/A4GmvAb