<public:component>
<public:attach for="element" event="oncontentready" onevent="fixPngImage()" />
<script>

var supported = /MSIE (5\.5)/.test(navigator.userAgent) && navigator.platform == "Win32";
var realSrc = "";
var blankSrc = "img/png-pixel.gif";

if( supported && element && /\.png$/.test( element.src.toLowerCase() ) ) {
	element.runtimeStyle.display = "inline-block";
}

//if (supported ) fixPngImage();

function pngImagePropertyChanged() {
   if (!supported) return;

   var pName = event.propertyName;
   if (pName != "src") return;
   // if not set to blank
   if ( ! new RegExp(blankSrc).test(src))
      fixImage();
};

function fixPngImage() {
	if( !supported ) return;
	
	if( !element || typeof element.src != "string" ) 
		return;
	
	if( element.src == blankSrc )
		return;
	
	if( element.src && !/\.png$/.test( element.src.toLowerCase() ) ) {
		return;
	}
	
	var src = element.src;
	
	element.runtimeStyle.width =  element.scrollWidth + "px";
    element.runtimeStyle.height = element.scrollHeight + "px";
	
	element.src = blankSrc;
      
      // set filter
      element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" +
                                     src + "',sizingMethod='scale')";
}

</script>
</public:component>