Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá a todos,
Essa semana peguei um sistema já pronto e em funcionamento, porém com um erro incomum.
No banco de dados há uma rotina que atualiza uma tabela com a hora atual.
No sistema eu tenho um javascript que envia uma solicitação JSON para um arquivo php a cada 500ms para pegar a hora da tabela e imprimir na tela. No sistema ainda tenho um contador regressivo que se inicia a X horas. Quando o contador regressivo chegar em 0 (zero), o conteudo da div do contador regressivo some e aparece a mensagem "Finalizado".
Acontece que na maioria das vezes a mensagem aparece por cima do contador regressivo. como se a função tivesse sendo chamada. O mais interessante é que o contador continua na tela e só quando o cronometro é zero que ela some. Mas a div da mensagem aparece do nada.
segue o código:
function atualizaLeilao(){
var leiloes = '';
$.ajaxSetup({ cache: false });
$('.itemLeiao').each(function () {
var auctionId = $(this).attr('title');
if (leiloes != '') leiloes = leiloes + ',';
leiloes = leiloes + auctionId;
});
if(leiloes){
$.ajax({
url: 'update_information.php',
dataType: 'json',
type: 'POST',
data: 'leiloes=' + leiloes,
global: false,
success: function (data) {
var id_usuario = parseInt($('#idUsuario').text());
$.each(data, function (j, item) {
var leilao_id = item.leilao.id_leilao;
var leilao_cronometro = item.leilao.tempo_leilao;
var leilao_jogador_id = item.leilao.id_pessoa;
var leilao_jogador_nome = item.leilao.usuario;
var leilao_preco = "R$ " + item.leilao.preco;
//alert(leilao_cronometro);
var campo_preco = $('#leilao_' + leilao_id + ' .areaValor');
var campo_cronometro = $('#leilao_' + leilao_id + ' .areaContagem');
var campo_data = $('#leilao_' + leilao_id + ' .areaTempo');
var campo_jogador_nome = $('#leilao_' + leilao_id + ' .usuario');
var campo_jogador_nome_a = $('#leilao_' + leilao_id + ' .usuario a');
var campo_btn_lance = $('#leilao_' + leilao_id + ' .btnLanceLeilao');
var campo_btn_lance_a = $('#leilao_' + leilao_id + ' .btnLanceLeilao a');
var campo_btn_lance_esp_a = $('#leilao_' + leilao_id + ' .espacamento .btnLance a');
var campo_btn_lance_fut_a = $('#leilao_' + leilao_id + '.itemLeilaoFuturo .btnLance a');
var quadro_leilao = $('#leilao_' + leilao_id);
var imagem_produto = $('#leilao_' + leilao_id + '.areaFoto');
var imagem_produto_desabilitada = $('#leilao_' + leilao_id + '.areaFotoDesativada');
$('#leilao_' + leilao_id + ' .btnLoginLeilao').css("display","block");
$('#leilao_' + leilao_id + ' .btnLanceLeilao').css("display","block");
$('#leilao_' + leilao_id + ' .areaContagem').css("display","block");
// alterando na tela
campo_jogador_nome_a.text(leilao_jogador_nome); // nome jogador ultimo lance
// alterando botao de lance
if (id_usuario == leilao_jogador_id && id_usuario != NaN) {
campo_btn_lance_a.attr('style', 'background-image:none;left:-20px;position:relative;');
campo_btn_lance_fut_a.attr('style', 'background-image:none;top:5px;left:-25px;position:relative;');
campo_btn_lance_a.html("<img src='" + base_url + "/img/layout/voce-esta-vencendo.png'>");
campo_btn_lance_esp_a.attr('style', 'margin-left:-10px;background:none;');
campo_btn_lance_esp_a.html("<img src='" + base_url + "/img/layout/voce-esta-vencendo-pequeno.png'>");
} else {
campo_btn_lance_a.removeAttr('style', 'background-image:none;left:-20px;position:relative;');
campo_btn_lance_a.attr('style', 'cursor:pointer');
campo_btn_lance_a.css('visibility', 'visible');
campo_btn_lance_a.html('Lance');
}
//alert(campo_preco.text());
if (campo_preco.text() != leilao_preco) {
campo_preco.fadeIn().animate({ 'backgroundColor': 'red' }, 500);
campo_preco.text(leilao_preco); // novo preco
} else {
campo_preco.css('background-color', '');
}
if (leilao_cronometro > 0) {
var arrematado=0;
var horas = Math.floor(leilao_cronometro / 3600) % 24;
var minutos = Math.floor(leilao_cronometro / 60) % 60;
var segundos = Math.floor(leilao_cronometro % 60);
if (horas < 10) horas = "0" + horas;
if (minutos < 10) minutos = "0" + minutos;
if (segundos < 10) segundos = "0" + segundos;
var hora_exibe = segundos;
if (leilao_cronometro <= 5) {
campo_cronometro.attr('style', 'color:#ec0000');
} else {
campo_cronometro.removeAttr('style', 'color:#ec0000');
}
if (hora_exibe != campo_cronometro.text()) {
//AKI
$('#leilao_' + leilao_id + ' .areaFoto').css("display", "block");
$('#leilao_' + leilao_id + ' .areaTotalDesconto').css("display", "block");
$('#leilao_' + leilao_id + ' .areaFotoDesativada').css("display", "none");
$('#leilao_' + leilao_id).css('border', 'solid 3px #990000');
$('#leilao_' + leilao_id).css('margin', '7px');
campo_data.css('visibility', 'hidden');
campo_cronometro.text(hora_exibe);
campo_cronometro.css('color', '#91bf29');
}
}
if (leilao_cronometro == 0) {
$('#leilao_' + leilao_id + ' .btnLoginLeilao').css("display","none");
$('#leilao_' + leilao_id + ' .btnLanceLeilao').css("display","none");
$('#leilao_' + leilao_id + ' .areaContagem').css("display","none");
$('#leilao_' + leilao_id + ' .areaTempo').css("display","none");
$('#leilao_' + leilao_id + ' .areaFoto').css("display","block");
$('#leilao_' + leilao_id + ' .areaTotalDesconto').css("display","block");
$('#leilao_' + leilao_id + ' .areaFotoShow').css("display","none");
$('#leilao_' + leilao_id + ' .areaFotoDesativada').css("display","none");
$('#leilao_' + leilao_id + ' .areaFotoDesativadaNone').css("display","none");
$('#leilao_' + leilao_id + ' .usuario').css("width","300px");
$('#leilao_' + leilao_id + ' .usuario').css("left","0px");
$('#leilao_' + leilao_id + ' .usuario').css("font-size","16px");
$('#leilao_' + leilao_id + ' .usuario').css("top","395px");
$('#leilao_' + leilao_id + ' .idleilao a').css("color","#a60b00");
$('#leilao_' + leilao_id + ' .idleilao').css("top","-10px");
$('#leilao_' + leilao_id + ' .areaArrematado').text("Arrematado");
}
});
}, error: function (XMLHttpRequest, textStatus, errorThrown) {
}
}); // fim ajax
} // fim if
setTimeout('atualizaLeilao()',500);
}
$(document).ready(function() {
atualizaLeilao();
});
Eu Espero que tenha conseguido ser claro. Isso ja esta me deixando de cabelo branco.
Por favor me ajudem.
Carregando comentários...