HTML
<div id="block1" class="block">
<span class="text1 _shown">one</span>
<span class="text2 _hidden">two</span>
</div>
<div id="block2" class="block">
<span class="text1 _shown">three</span>
<span class="text2 _hidden">four</span>
</div>
<div id="block3" class="block">
<span class="text1 _hidden">five</span>
<span class="text2 _shown">six</span>
</div>
CSS
._shown
{
display:block;
}
._hidden
{
display: none;
}
JavaScript
jQuery(function(){
var block_array = jQuery(".block");
var used_blocks = [];
var getBlock = function(){
var random_block = "block"+(Math.floor(Math.random()*block_array.length)+1);
var used = false;
for(key in used_blocks){
if(random_block===used_blocks[key])
used = true;
};
if(!used)
return random_block;
else
return getBlock();
};
var setBlock = function(bid){
if(used_blocks.length===block_array.length-1)
used_blocks=[];
else
used_blocks.push(bid);
};
var showNextQuote = function(){
var blockId = getBlock();
setBlock(blockId);
var shown = jQuery("#"+blockId+" ._shown");
var hidden = jQuery("#"+blockId+" ._hidden");
shown.fadeOut(700, function(){
hidden.fadeIn(700,function(){
shown.removeClass("_shown").addClass("_hidden");
hidden.removeClass("_hidden").addClass("_shown");
setTimeout(showNextQuote(),500);
});
});
};
showNextQuote();
});
EDIT
Modified code to fit your explanations in this answer's comments; should be everything you need.