(function($){var dropShadowZindex=1;$.fn.dropShadow=function(options){var opt=$.extend({left: 4,top: 4,blur: 2,opacity: .5,color: "black",swap: false},options);var jShadows=$([]);this.not(".dropShadow").each(function(){var jthis=$(this);var shadows=[];var blur=(opt.blur<=0)?0 : opt.blur;var opacity=(blur==0)?opt.opacity : opt.opacity/(blur*8);var zOriginal=(opt.swap)?dropShadowZindex : dropShadowZindex+1;var zShadow=(opt.swap)?dropShadowZindex+1 : dropShadowZindex;var shadowId;if(this.id){shadowId=this.id+"_dropShadow";}else{shadowId="ds"+(1+Math.floor(9999*Math.random()));}$.data(this,"shadowId",shadowId);$.data(this,"shadowOptions",options);jthis .attr("shadowId",shadowId).css("zIndex",zOriginal);if(jthis.css("position")!="absolute"){jthis.css({position: "relative",zoom: 1});}bgColor=jthis.css("backgroundColor");if(bgColor=="rgba(0,0,0,0)")bgColor="transparent";if(bgColor!="transparent"||jthis.css("backgroundImage")!="none"||this.nodeName=="SELECT"||this.nodeName=="INPUT"||this.nodeName=="TEXTAREA"){shadows[0]=$("<div></div>").css("background",opt.color);}else{shadows[0]=jthis .clone().removeAttr("id").removeAttr("name").removeAttr("shadowId").css("color",opt.color);}shadows[0].addClass("dropShadow").css({height: jthis.outerHeight(),left: blur,opacity: opacity,position: "absolute",top: blur,width: jthis.outerWidth(),zIndex: zShadow});var layers=(8*blur)+1;for(i=1;i<layers;i++){shadows[i]=shadows[0].clone();}var i=1;var j=blur;while(j>0){shadows[i].css({left: j*2,top: 0});shadows[i+1].css({left: j*4,top: j*2});shadows[i+2].css({left: j*2,top: j*4});shadows[i+3].css({left: 0,top: j*2});shadows[i+4].css({left: j*3,top: j});shadows[i+5].css({left: j*3,top: j*3});shadows[i+6].css({left: j,top: j*3});shadows[i+7].css({left: j,top: j});i+=8;j--;}var divShadow=$("<div></div>").attr("id",shadowId).addClass("dropShadow").css({left: jthis.position().left+opt.left-blur,marginTop: jthis.css("marginTop"),marginRight: jthis.css("marginRight"),marginBottom: jthis.css("marginBottom"),marginLeft: jthis.css("marginLeft"),position: "absolute",top: jthis.position().top+opt.top-blur,zIndex: zShadow});for(i=0;i<layers;i++){divShadow.append(shadows[i]);}jthis.after(divShadow);jShadows=jShadows.add(divShadow);$(window).resize(function(){try{divShadow.css({left: jthis.position().left+opt.left-blur,top: jthis.position().top+opt.top-blur});}catch(e){}});dropShadowZindex+=2;});return this.pushStack(jShadows);};$.fn.redrawShadow=function(){this.removeShadow();return this.each(function(){var shadowOptions=$.data(this,"shadowOptions");$(this).dropShadow(shadowOptions);});};$.fn.removeShadow=function(){return this.each(function(){var shadowId=$(this).shadowId();$("div#"+shadowId).remove();});};$.fn.shadowId=function(){return $.data(this[0],"shadowId");};$(function(){var noPrint="<style type='text/css' media='print'>";noPrint+=".dropShadow{visibility:hidden;}</style>";$("head").append(noPrint);});})(jQuery);