2010-08-07 36 views

Répondre

282

Vous pouvez utiliser .delay() avant une animation, comme ceci:

$("#myElem").show().delay(5000).fadeOut(); 

Si ce n'est pas une animation, utilisez directement setTimeout(), comme ceci:

$("#myElem").show(); 
setTimeout(function() { $("#myElem").hide(); }, 5000); 

Vous faites la seconde parce .hide() wouldn » t normalement être sur la file d'attente animation (fx) sans une durée, c'est juste un effet instantané.

Ou, une autre option est d'utiliser .delay() et .queue() vous, comme ceci:

$("#myElem").show().delay(5000).queue(function(n) { 
    $(this).hide(); n(); 
}); 
+0

Excellentes solutions – Imdad

+0

La suggestion 2 a parfaitement fonctionné en affichant une icône de coche et en utilisant fadeOut() au lieu de hide(). Très bonne réponse. –

+1

Vous pouvez également faire $ ("# myElem"). Show(). Delay (5000) .hide(); – wilsjd

13

Vous pouvez utiliser l'effet ci-dessous pour animer, vous pouvez modifier les valeurs selon vos besoins

$("#myElem").fadeIn('slow').animate({opacity: 1.0}, 1500).effect("pulsate", { times: 2 }, 800).fadeOut('slow');