Поскольку смещения не являются фиксированными, на самом деле невозможно получить один и тот же результат одним вызовом, но подобная функция сделает свое дело:
function hoverIt(name, topIn, topOut, duration)
duration = (duration != undefined) ? duration : 500;
$('#footer' + name).hover(function(){
$('#popup' + name).animate({top: topIn + 'px'},
{queue: true, duration: duration});
}, function(){
$('#popup' + name).animate({top: topOut + 'px'},
{queue: true, duration: duration});
});
}
Затем просто вызовите функцию для каждогоанимация:
hoverIt('Network', -80, 30, 300);
hoverIt('Port', -62, 30);
hoverIt('Airport', -62, 30);
Намного лучше, я думаю.Когда их будет много, вы можете использовать что-то вроде:
var hovers = [['Network', -80, 30, 300],
['Port', -62, 30],
['Airport', -62, 30]];
for (var i = 0; i < hovers.length; i++) {
hoverIt(hovers[i][0], hovers[i][1], hovers[i][2], hovers[i][3]);
}
примечание: не проверено