Ну, во-первых, slideDown принимает в качестве параметра функцию, которую нужно вызвать после завершения. http://api.jquery.com/slideDown/
Попросите другого ответчика, который понял, о чем вы спрашивали, и #fail мне за неправильное чтение вашего вопроса.
При этом для метода, который не имеет обратного вызова после завершения, вот несколько вариантов.
Два варианта:
- Использовать очередь
- Использовать setTimeout
Использовать очередь:
http://api.jquery.com/queue/
$(".userInfo.module").fooThatTakes(3000).queue(function() {
$("#home #oneTool div.divspot").each(function(){
var newVal = topVal + parseInt($(this).css('top'));
$(this).css('top',newVal);
});
});
Использовать setTimeout.
var delay = 3000;
$(".userInfo.module").fooThatTakes(delay);
t = setTimeout(afterFoo, delay);
function afterFoo() {
$("#home #oneTool div.divspot").each(function(){
var newVal = topVal + parseInt($(this).css('top'));
$(this).css('top',newVal);
});
}