// placar.js
$("#botao-placar").click(mostraPlacar);
$("#botao-sync").click(sincronizaPlacar);
function inserePlacar() {
var corpoTabela = $(".placar").find("tbody");
var usuario = "Lisa";
var numPalavras = $("#contador-palavras").text();
var botaoRemover = "<a href='#'><i class='small material-icons'>delete</i></a>" ;
var linha = novaLinha(usuario,numPalavras);
linha.find (".botao-remover").click(removeLinha);
corpoTabela.prepend(linha);
$(".placar").slideDown(500);
scrollPlacar();
}
function scrollPlacar() {
var posicaoPlacar = $(".placar").offset().top;
$("body").animate(
{
scrollTop: posicaoPlacar + "px"
}, 1000);
}
function novaLinha(usuario, palavras){
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;
}
function removeLinha(event){
event.preventDefault();
var linha = $(this).parent().parent();
linha.fadeOut(1000);
setTimeout(function (){
linha.remove();
}, 1000);
}
function mostraPlacar(){
$(".placar").stop().slideToggle(600);
}
function sincronizaPlacar(){
var placar = [];
var linhas = $("tbody>tr");
linhas.each(function(){
var usuario = $(this).find("td:nth-child(1)").text();
var palavras = $(this).find("td:nth-child(2)").text();
console.log(usuario);
var score = {
usuario: usuario,
pontos: palavras
};
placar.push(score);
});
var dados = {
placar: placar
};
$.post("http://localhost:3000/placar", dados, function(){
console.log("Placar sincronizado com sucesso");
});
}
Meu código está gerando um objeto a mais quando utilizo o sincronizaPlacar. O que esta acontecendo? Não consegui achar o problema.