Я бы не советовал использовать setInterval при работе с анимацией из-за того, как новые браузеры вносят изменения в методы setInterval и setTimeout, когда вкладка не является активной вкладкой.
var $title1 = $("#title-1");
var $title1img = $title1.find('img');
function anim(){
if ($title1.height() < parseInt($title1img.css("bottom"))) {
setTimeout(function(){
$title1img.animate({bottom : '-=60px'},anim);
},5000);
}
}
$title1img.animate({bottom : '-=60px'},anim);
Редактировать:Другая причина не использовать setInterval для запуска анимации связана с reqeustAnimationFrame, который был реализован в 1.6 и удален в 1.6.3, который, скорее всего, будет добавлен обратно в 1.7.Если вы сейчас напишете код, который будет совместим позже, это будет меньше затрат на техобслуживание, которое вам придется выполнять позже, если вам потребуется обновление.
Вот jsfiddle http://jsfiddle.net/czUnU/
Редактировать: функция...
function animColumn(title,img){
function anim(){
if (title.height() < parseInt(img.css("bottom")) {
setTimeout(function(){
img.animate({bottom : '-=60px'},anim);
},5000);
}
}
img.animate({bottom : '-=60px'},anim);
}
animColumn($("#title-1"),$("#title-1 img"));
animColumn($("#title-2"),$("#title-2 img"));
animColumn($("#title-3"),$("#title-3 img"));
http://jsfiddle.net/czUnU/1/