Pergunta

Eu tenho um div para mostrar uma mensagem, eu quero que a mensagem seja exibida por alguns segundos e depois é só desvanecer até que desapareça.

Eu só definir uma div normal e escondê-lo quando a página é carregada com $ ( '# mydiv') hide ();.

Eu tenho um botão para mostrar a div com o efeito desejado, por isso, que estou usando:

  $('#myDiv').fadeIn('fast').effect("highlight", { color: "green", mode:"hide" }, 5000);

Isso funciona perfeitamente no Firefox e Chrome, mas no IE (tentou fazê-lo em 6, 7 e 8) funciona apenas na primeira vez, depois de que ele não vai mostrar a mensagem.

Se não há nenhuma maneira de conseguir isso no IE, eu gostaria de saber como posso fazer uma fadeOut ou algo parecido APÓS o destaque foi encerrada.

Obrigado por sua ajuda

Foi útil?

Solução

Parece que este bilhete jQuery está relacionado ao seu problema.

A solução que encontrei é para adicionar

$('#myDiv').removeAttr('style');

antes

$('#myDiv').fadeIn('fast')
           .effect("highlight", { color: "green", mode:"hide" }, 5000);

para limpar a questão filtro IE.

Outras dicas

De um modo geral eu não faço efeitos em cadeia. Você provavelmente vai querer usar uma chamada de retorno em vez disso:

$('#myDiv').fadeIn('fast', function() {
  $(this).effect("highlight", { color: "green", mode:"hide" }, 5000);
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top