function fixedPNGImages(oDoc)
{
	if(getEngine()==0&&(parseInt(getVersionEx(),10)>=5.5&&parseInt(getVersionEx(),10)<7))
	{
		var aImg=oDoc.getElementsByTagName('*');
		for(x=0;x<aImg.length;x++)
		{
			if(aImg[x].tagName=='IMG')
			{
				if(aImg[x].src.search(/\.png$/)>=0)
				{
					var sImageSrc=aImg[x].src,sClass=aImg[x].className,sStyle=aImg[x].style.cssText;
					aImg[x].outerHTML='<span id="'+aImg[x].id+'" name="'+aImg[x].name+'" class="'+sClass+'" style="width:'+aImg[x].width+';height:'+aImg[x].height+';overflow:hidden;'+sStyle+';"></span>';
					aImg[x].style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+sImageSrc+'\',sizingMethod=\'scale\')';
				}
			}
			if(aImg[x].style.backgroundImage.length>0)
			{
				if(aImg[x].style.backgroundImage.search(/\.png/)>=0)
				{
					aImg[x].style.backgroundImage.search(/^url\(\'?(.*)\'?\)$/);
					aImg[x].style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+RegExp.$1+'\',sizingMethod=\'scale\')';
					aImg[x].style.backgroundImage='';
				}
			}
		}
		var oCSS=oDoc.styleSheets;
		for(y=0;y<oCSS.length;y++)
		{
			var oRules=oCSS[y].rules;
			for(x=0;x<oRules.length;x++)
			{
				if(oRules[x].style.backgroundImage.search(/\.png/)>=0)
				{
					oRules[x].style.backgroundImage.search(/^url\(\'?(.*)\'?\)$/);
					oRules[x].style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+RegExp.$1+'\',sizingMethod=\'scale\')';
					oRules[x].style.backgroundImage='';
				}
			}
		}
	}
}
function fixedPNG(oDoc){addEvent(window,'load',function(){fixedPNGImages(oDoc);});}

/*
Las siguientes funciones se utilizan para la precarga de imágenes y su uso en eventos hover, press, etc tirando de cache
De esta forma evitamos tener que hacer llamadas a servidor por cada uno de estos eventos para buscar la imagen
*/
function preLoadImages(sPaths)
{
  var aPaths=sPaths.split(',');
  var aImages=new Array();
  loadImage(0,aPaths,aImages);
}
function loadImage(nIndex,aPaths,aImages)
{
  if(nIndex<aPaths.length)
  {
    aImages[nIndex]=new Image();
    aImages[nIndex].src=aPaths[nIndex];
    ifImageLoad(nIndex,aPaths,aImages);
  }
}
function ifImageLoad(nIndex,aPaths,aImages)
{
  if(aImages[nIndex].complete)
    loadImage(nIndex+1,aPaths,aImages);
  else
    setTimeout(function(){ifImageLoad(nIndex,aPaths,aImages);},100);
}
