/*
	jQuery Element Crosfader
	Created by Alex Oliver
	v1.0 01 August 2009
*/
(function($) {
    $.fn.extend({
       
		crossFade: function(options){
			var defaults = {duration:300,timeout:2000,element:'img'};
			var options = $.extend(defaults, options);
			return this.each(function() {					  
				var CFduration = options.duration;
				var CFtimeout=options.timeout;
				var CFelement=options.element;
				var elmName=$(this).children(CFelement); var thisFade; var elmCount=elmName.size()-1;
				if(elmCount>0){
					elmName.hide().eq(0).fadeIn(CFduration,function(){
					if(jQuery.browser.msie){$(this).get(0).style.removeAttribute('filter');}});
					setInterval(function(){
						elmName.each(function(){
							thisIndex=elmName.index(this);
							if($(this).css('display')=='inline' || $(this).css('display')=='block'){
							thisFade=thisIndex; if(thisIndex==elmCount){nextFade=0;} else{nextFade=thisIndex+1;}}
						});
						elmName.eq(thisFade).fadeOut(CFduration);
						elmName.eq(nextFade).fadeIn(CFduration,function(){
							if(jQuery.browser.msie){$(this).get(0).style.removeAttribute('filter');}												
						});
					},CFtimeout);
				}else{elmName.hide().eq(0).fadeIn(CFduration);}
			});
		}
		
    });
})(jQuery);
