Просмотр полной версии : too much recursion
function phone_anim() {
$('.phone').animate({
opacity: 0.3
}, 600).animate({
opacity: 1
}, 600);
phone_anim();
}
phone_anim();
:) я думал прокатит(
Nesquik,
строка 8 должна быть в строке 6
рони, боюсь спросить это как?
Nesquik,
(function phone_anim() {
$('.phone').animate({
opacity: 0.3
}, 600).animate({
opacity: 1
}, 600, phone_anim);
}())
Вопрос еще любопытный. В моем предыдущем опыте использования асинхронных функций таймаута и интервала приводило к тому что условно мигание постепенно убыстрялось. Ведь, как я понимаю, это связано с механизмом работы данных функций в js ? и, если к примеру таймаут = 0 реальное срабатывание = 200 мс.
Nesquik,
это связано только с тем что вы увеличивали количество запущенных функций, устройство таймаута или интервала тут не причём, только в случае интервала создать лавину функций проще и беспощаднее.
рони, т.е. я правильно понимаю что через рекурсию подобные задачки решать лучше?
рекурсию подобные задачки решать лучше?
лучше не умножать количество процессов, неважно за счёт чего это достигается, правильным запуском таймера или Callback
да, но как тогда решить такие задачи?
да, но как тогда решить такие задачи?
запускать следующий цикл, только когда отработал предыдущий, либо отключать работу предыдущего цикла при запуске нового.
первый вариант пост 4
второй ниже
(function phone_anim() {
$('.phone').stop(true,true).animate({
opacity: 0.3
}, 600).animate({
opacity: 1
}, 600 );
window.setTimeout(phone_anim, 1200)
}())
даже если 1200 будет меньше 600 + 600 , stop прервёт предыдущие анимации и наложения анимаций не произойдёт.
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot