Aprendamos AS3 (y +)
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Visualizar PNGs con transparencia en Microsoft Internet Explorer

Ir abajo

Visualizar PNGs con transparencia en Microsoft Internet Explorer Empty Visualizar PNGs con transparencia en Microsoft Internet Explorer

Mensaje  JDo Sáb Jun 14, 2008 1:20 pm

No sé si alguna vez os habrá pasado pero yo estoy harto que cada vez que quiero hacer una web, y uso PNGs con transparencia para el diseño, el “maravilloso” Internet Explorer no los muestra correctamente.

Para los que tengáis este problema os pongo a continuación un pequeño JS para solucionarlo.

Código:
function correctPNG() // Windows MSIE 5.5 & 6.
{
  var arVersion = navigator.appVersion.split("MSIE")
  var version = parseFloat(arVersion[1])
  if ((version >= 5.5) && (document.body.filters))
  {
      for(var i=0; i<document.images.length; i++)
      {
        var img = document.images[i]
        var imgName = img.src.toUpperCase()
        if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
        {
            var imgID = (img.id) ? "id='" + img.id + "' " : ""
            var imgClass = (img.className) ? "class='" + img.className + "' " : ""
            var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
            var imgStyle = "display:inline-block;" + img.style.cssText
            if (img.align == "left") imgStyle = "float:left;" + imgStyle
            if (img.align == "right") imgStyle = "float:right;" + imgStyle
            if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
            var strNewHTML = "<span " + imgID + imgClass + imgTitle
            + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
            + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
            + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
            img.outerHTML = strNewHTML
            i = i-1
        }
      }
  }   
}

Este código lo podéis guardar en un archivo .js
En mi caso lo he llamado png.js y lo he guardado en la carpeta ./js/
Después sólo tenéis que cargar el js e invocar a la función en la carga del documento

Código:
//Este código antes de abrir el TAG <body>
<script src="js/png.js" language="JavaScript"></script>
<script language="JavaScript">window.attachEvent("onload", correctPNG);</script>
JDo
JDo
Admin

Cantidad de envíos : 35
Edad : 47
Localización : Bcn
Fecha de inscripción : 24/03/2008

Volver arriba Ir abajo

Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.