Метод .prepend
не принимает обратный вызов, потому что он не асинхронный.
Вы можете передать функцию в качестве первого аргумента, но она не так полезна для добавления только одного элемента.
Вот ваш код исправлен.
$('#primary').fadeOut('slow', function(){
var content = $('<div id="content"/>'),
primary = $(this);
primary.prepend( content );
content.load(link + ' #content', function(){
primary.fadeIn('slow');
});
});