Ответы:
Вы можете использовать .delay()
перед анимацией, например так:
$("#myElem").show().delay(5000).fadeOut();
Если это не анимация, используйте setTimeout()
напрямую, вот так:
$("#myElem").show();
setTimeout(function() { $("#myElem").hide(); }, 5000);
Вы делаете второй, потому .hide()
что обычно не будет на анимации (fx
очереди ) без продолжительности, это просто мгновенный эффект.
Или другой вариант - использовать .delay()
и .queue()
себя, вот так:
$("#myElem").show().delay(5000).queue(function(n) {
$(this).hide(); n();
});
.delay()
будет работать с .hide()
элементом, который будет показан, а затем сразу же скрыт. Посмотрите это jsFiddle. Вот почему Ник заявил: «Если это не анимация, используйте setTimeout () напрямую, например так: ....»
Вы можете использовать эффект ниже для анимации, вы можете изменить значения в соответствии с вашими требованиями
$("#myElem").fadeIn('slow').animate({opacity: 1.0}, 1500).effect("pulsate", { times: 2 }, 800).fadeOut('slow');
Так же просто, как это:
$("#myElem").show("slow").delay(5000).hide("slow");