Pergunta

Eu tenho um evento de clique que verifica para ver se um formulário está correto ou seja preenchido detalhes .. e então eu chamar uma função que faz isso

$('#message_text').html(text);
$('#message_system').fadeIn("slow");
$('#message_system').animate({ opacity: 1.0 }, 5000)
                    .fadeOut('slow', function() {
                        $(this).hide();
                    });

Tudo funciona ok, enquanto eu esperar .. se eu duplo clique no botão duas vezes, por exemplo, que ele pára exibindo ...

Eu presumo que se ele está escondido hide () então fadeIn () vai mostrá-lo automaticamente?

Alguém tem alguma experiência com isso ??

O que eu provavelmente gostaria de fazer é sobre o segundo clique, em seguida, disgard efeitos atuais e reexibir nova messaage

Obrigado

Foi útil?

Solução

Eu não tenho certeza se é isso que você está depois, mas você já olhou para o stop () método . Você pode pular direto para o fim de quaisquer animações atuais chamando $('#message_system').stop(true, true) antes de começar novamente.

Outras dicas

if ( ! $(this).is(':animated') ) {
    // Do the animation...
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top