Я не могу отложить показ div. Я хочу задержать анимацию примерно на 20 секунд, это возможно ???Как отложить анимацию jquery?
$("#microcharcounter").delay(10000).show();
Я не могу отложить показ div. Я хочу задержать анимацию примерно на 20 секунд, это возможно ???Как отложить анимацию jquery?
$("#microcharcounter").delay(10000).show();
Попробуйте это:
$("#microcharcounter").delay(10000).show(0);
или это:
$("#microcharcounter").delay(10000).queue(function(n) {
$(this).show();
n();
});
Причина этого заключается в том, что .delay()
только задержит элементы в очереди анимации. Таким образом, вы можете сделать .show()
короткой анимацией, добавив продолжительность «0» или добавить ее в очередь с .queue()
.
Вы можете сделать это следующим образом:
setTimeout(function() {
$("#microcharcounter").show();
}, 20000);
Проблема с .delay()
и .show()
(без срока), является то, что .show()
не анимация, это непосредственный эффект, который не находится на fx
очереди на все. Тем не менее, вы можете дать ему такую продолжительность:
$("#microcharcounter").delay(20000).show("fast");
Всегда искать задержку на google, когда мне нужно использовать setTimeout. Так что этот пост мне помог несколько раз :) – Kimtho6
Если вы вручную ставите очередь, не забудьте удалить из очереди! :) –
@Nick - просто добавил 'n();', но нужно ли это, когда это последний элемент? – user113716
Да, если вы когда-нибудь вызываете другую анимацию позже, например, лучше всего быть в безопасности IMO, вы также можете вызвать '$ (this) .show(). Dequeue()', это то, что я обычно делаю при работе с '$ (это), немного чище для меня. –