setInterval bugando vento de click

2 respostas
yschmitzz

Fala pessoal

estou com um problema muito doido....

fiz um script que quando o site carrega, uma diva fica piscando, então pra fzer a div piscar, usei o "setInterval" mas percebi que ele est causando um problema, qundo eu clico na div tem que exir uma mensagem (para teste) a quantidade de vezes que o setInterval repetiu será a quantidade de vezes que a mensagem aparece

acho que ficou meio confuso

exemplo

entrei no site, o div piscou 3 vezes, então cliquei nela, aparecerá 3 vezes a mesma mensagem

aqui esta o trecho do codigo

function loginAtt()
{
repAtt = setInterval(trocaCor,500);
}




function trocaCor()
{
if (troca == 0){
$("#login").css("background-color","rgba(100,100,25,0.4)");
troca = 1;
}
else
{
$("#login").css("background-color","rgba(20,25,25,0.6)");
troca = 0;
}




$("#login").click(function() 
{


if (click2 == 0){
alert(click2);
}else
{
alert(click2);}


});

Alguem sabe o que pode esta acontecendo, abraço!!!

2 Respostas

E

yschmitzz:
Fala pessoal

estou com um problema muito doido…

Seu teclado está com problemas de teclas faltando, certo?

Fora isso, não vi em lugar nenhum do seu código algo que conte os eventos. Quem é que atualiza a variável “click2”? Nâo está nesse código que você nos mostrou. Pelo que você escreveu, deve mostrar algo como “undefined”.

yschmitzz

Sim, algumas teclas estavam ruim :stuck_out_tongue:
a variável click2 é só pra testar mesmo.

o funcionamento certo é o setInterval ficar mudando uma div de cor para dar efeito de que esta piscando, e quando clicar exibir uma mensagem (1 vez só)
só que se ele piscar 10 vezes, executa 10 vezes o alert(“qualquer coisa”), se eu deixar ele piscar mais 5 vezes( 10 + 5 = 15), ele executará 15 vezes alert(“texto qualquer”);

mas em fim, consegui resolver o problema, mas não sei o porque que estava acontecendo isso

alterei o código: setInterval(meuMetodo,100);
por: setInterval(function() {/* conteúdo de ‘meuMetodo’ */ },100);

agora está funcionando certo, mas não sei o que aconteceu…

Criado 25 de março de 2013
Ultima resposta 25 de mar. de 2013
Respostas 2
Participantes 2