Я обычно показываю и скрываю блоки таким кодом:
$('.click').click(function(){
$('.test1').fadeOut(1000);
$('.test2').fadeIn(1000);
});
Один блок скрывается, другой появляется. Но с этим очень много проблем!
Потому что если у div не будет заданна position: absolute;
То блоки начинают прыгать.
Можно сделать что то подобное, но с position: relative; ?