/* * jQuery ifixpng plugin * (previously known as pngfix) * Version 2.1-cleverage-patched  (04/07/2008) * @requires jQuery v1.1.3 or above * - fixes hyperlinks on transparent background * - enables sizingMethod * * Examples at: http://jquery.khurshid.com * Copyright (c) 2007 Kush M. * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html */(function($){$.ifixpng=function(customPixel){$.ifixpng.pixel=customPixel;};$.ifixpng.getPixel=function(){return $.ifixpng.pixel||'http://www.loremipsum.net/pixelgif/pics/pixel.gif';};var hack={ltie7:$.browser.msie&&parseInt($.browser.version)<7,filter:function(src,sizingMethod){return"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,sizingMethod="+sizingMethod+",src='"+src+"')";}};$.fn.ifixpng=hack.ltie7?function(params){var params=typeof params=='object'?params:{};params=$.extend({sizingMethod:'crop'},params);return this.each(function(){var $$=$(this);var base=$('base').attr('href');if(base){base=base.replace(/\/[^\/]+$/,'/');}if($$.is('img')||$$.is('input')){if($$.attr('src')){if($$.attr('src').match(/.*\.png([?].*)?$/i)){var source=(base&&$$.attr('src').search(/^(\/|http:)/i))?base+$$.attr('src'):$$.attr('src');$$.css({filter:hack.filter(source,params.sizingMethod),width:$$.width(),height:$$.height()}).attr('src',$.ifixpng.getPixel()).positionFix();}}}else{var image=$$.css('backgroundImage');if(image.match(/^url\(["']?(.*\.png([?].*)?)["']?\)$/i)){image=RegExp.$1;image=(base&&image.substring(0,1)!='/')?base+image:image;$$.css({backgroundImage:'none',filter:hack.filter(image,params.sizingMethod),position:$$.css('position')!='absolute'?'static':$$.css('position')}).children().positionFix();}}});}:function(){return this;};$.fn.iunfixpng=hack.ltie7?function(){return this.each(function(){var $$=$(this);var src=$$.css('filter');if(src.match(/src=["']?(.*\.png([?].*)?)["']?/i)){src=RegExp.$1;if($$.is('img')||$$.is('input')){$$.attr({src:src}).css({filter:''});}else{$$.css({filter:'',background:'url('+src+')'});}}});}:function(){return this;};$.fn.positionFix=function(){return this.each(function(){var $$=$(this);var position=$$.css('position');if(position!='absolute'&&position!='relative'){$$.css('position','relative');}});};})(jQuery);