/* Elemental Rotator (1.29.09) `BKS */

// Set Animation Container and Element Type (img, p, *)
var container = "#imgFrame";
var elementType = "img"; 

// Final States (after animation, completed state)
var finalTop = 0;
var finalLeft = 0;
var finalOpacity = 1;
var finalHeight = 500;
var finalWidth = 500;

// Initial States (animate in, set to final if no animation)
var initialOpacity = 0;
var initialTop = finalTop;
var initialLeft = finalLeft;
var initialHeight = finalHeight;
var initialWidth = finalWidth;

// Post States (animate out, set to final if no animation)
var postOpacity = 0;
var postTop = finalTop; // add ['-='+] or ['+='+] to slide
var postLeft = finalLeft; // add ['-='+] or ['+='+] to slide
var postHeight = finalHeight;
var postWidth = finalWidth;

// Set Animation Time and Interval
var animationTime = 2000;
var animationInterval = 4000;

$().ready(function(){ // Apply Initial States and Interval
	$(container).css({position: 'relative', overflow: 'hidden', width: finalWidth, height: finalHeight}); // Set Container Size
	$(container+' '+elementType).css({position: 'absolute', top: initialTop, left: initialLeft, opacity: initialOpacity, width: initialWidth, height: initialHeight}); // Set All to Initial State
	$(container+' '+elementType+':first').css({position: 'absolute', top: finalTop, left: finalLeft, opacity: finalOpacity, width: finalWidth, height: finalHeight}); // Set 1st to Final State
	setInterval( eRotator, animationInterval);
});

function eRotator(){
	var e1 = $(container+' '+elementType+':first');
	e1.animate({top: postTop+'px', left: postLeft+'px', opacity: postOpacity, width: postWidth, height: postHeight}, animationTime, function(){e1.remove();}); // Animate Out
	e1.next().animate({top: finalTop+'px', left: finalLeft+'px', opacity: finalOpacity, width: finalWidth, height: finalHeight}, animationTime); // Animate In
	
	e1.clone().insertAfter(container+' '+elementType+':last').css({top: initialTop, left: initialLeft, opacity: initialOpacity, width: initialWidth, height: initialHeight});
};
