 /* Copyright (c) 2008 Kean Loong Tan http://www.gimiti.com/kltan
 * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * Copyright notice and license must remain intact for legal use
 * jFade
 * Version: 1.1 (Sep 24, 2009)
 * Requires: jQuery 1.2.6+
 *
 *
 * Original Code Copyright (c) 2008 by Michael Leigeber
 * Website: http://www.leigeber.com
 *
 *
 */

(function($){$.fn.jFade=function(options){var opts=$.extend({},$.fn.jFade.defaults,options);var startrgb,endrgb,er,eg,eb,rint,gint,bint,step;var target=this;var init=function(){var tgt=target;opts.steps=opts.steps||20;opts.duration=opts.duration||20;clearInterval(tgt.timer);endrgb=colorConv(opts.end);er=endrgb[0];eg=endrgb[1];eb=endrgb[2];if(!tgt.r){startrgb=colorConv(opts.start);var r=startrgb[0];var g=startrgb[1];var b=startrgb[2];tgt.r=r;tgt.g=g;tgt.b=b;}
rint=Math.round(Math.abs(tgt.r-er)/opts.steps);gint=Math.round(Math.abs(tgt.g-eg)/opts.steps);bint=Math.round(Math.abs(tgt.b-eb)/opts.steps);if(rint==0){rint=1}
if(gint==0){gint=1}
if(bint==0){bint=1}
tgt.step=1;tgt.timer=setInterval(function(){animateColor(tgt,opts.property,opts.steps,er,eg,eb,rint,gint,bint)},opts.duration);function animateColor(obj,property,steps,er,eg,eb,rint,gint,bint){var tgt=obj;var color;if(tgt.step<=steps){var r=tgt.r;var g=tgt.g;var b=tgt.b;if(r>=er){r=r-rint;}
else{r=parseInt(r)+parseInt(rint);}
if(g>=eg){g=g-gint;}
else{g=parseInt(g)+parseInt(gint);}
if(b>=eb){b=b-bint;}
else{b=parseInt(b)+parseInt(bint);}
color='rgb('+r+','+g+','+b+')';$(obj).css(property,color);tgt.r=r;tgt.g=g;tgt.b=b;tgt.step=tgt.step+1;}
else{clearInterval(tgt.timer);color='rgb('+er+','+eg+','+eb+')';$(obj).css(property,color);}}
function colorConv(color){var rgb=[parseInt(color.substring(0,2),16),parseInt(color.substring(2,4),16),parseInt(color.substring(4,6),16)];return rgb;}};if(opts.trigger=="load")
init();else
$(this).bind(opts.trigger,function(){target=this;init();});return this;};$.fn.jFade.defaults={trigger:"load",property:'background',start:'FFFFFF',end:'000000',steps:5,duration:30};})(jQuery);
