I use jquery to rotate my div one by one using fade effect but the effect is not smooth it jumps up and down and then display here is my fiddle.
http://jsfiddle.net/xXRw
Use the callback function:
setInterval(function(){
$('.testimonials div:first-child').fadeOut(function() {
$(this).next('div').fadeIn().end().appendTo('.testimonials');
});
},3000);
http://jsfiddle.net/xXRwA/3/
Note that you can also cache the object and show/hide the elements based on their indexes. This can be more efficient(if it matters) than querying the DOM and creating many jQuery objects which is not necessary here. Something like this.