Antworten:
Sie können .delay()
vor einer Animation Folgendes verwenden:
$("#myElem").show().delay(5000).fadeOut();
Wenn es sich nicht um eine Animation handelt, verwenden Sie diese setTimeout()
direkt wie folgt:
$("#myElem").show();
setTimeout(function() { $("#myElem").hide(); }, 5000);
Sie machen das zweite, weil .hide()
es normalerweise nicht fx
ohne Dauer in der Animation ( ) -Warteschlange wäre, es ist nur ein sofortiger Effekt.
Oder ist eine weitere Option zu verwenden .delay()
und .queue()
sich selbst, wie folgt aus :
$("#myElem").show().delay(5000).queue(function(n) {
$(this).hide(); n();
});
.delay()
wird nicht mit .hide()
dem Element arbeiten wird angezeigt und dann sofort ausgeblendet. Siehe diese jsFiddle aus diesem Grund sagte Nick: "Wenn es keine Animation ist, benutze setTimeout () direkt wie folgt: ...."
Sie können den folgenden Effekt zum Animieren verwenden. Sie können die Werte gemäß Ihren Anforderungen ändern
$("#myElem").fadeIn('slow').animate({opacity: 1.0}, 1500).effect("pulsate", { times: 2 }, 800).fadeOut('slow');
So einfach ist das:
$("#myElem").show("slow").delay(5000).hide("slow");