IE6下PNG图片不够明的解决方法

IE6下的PNG图片问题确实很蛋疼。。。用了这个方法以后对应的onclick等等事件就没有效果了,大家可以对这个fixPNG方法改进,而从达到其他的功能。

 

function fixPNG(myImage) 
{ 
    var arVersion = navigator.appVersion.split("MSIE"); 
    var version = parseFloat(arVersion[1]); 
 
    if ((version >= 5.5) && (version < 7) && (document.body.filters)) 
    { 
        var imgID = (myImage.id) ? "id='" + myImage.id + "' " : ""; 
        var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : ""; 
        var imgTitle = (myImage.title) ? "title='" + myImage.title  + "' " : "title='" + myImage.alt + "' "; 
        var imgStyle = "display:inline-block;" + myImage.style.cssText; 
        var strNewHTML = "<span " + imgID + imgClass + imgTitle 
            + " style=\"" + "width:" + myImage.width 
            + "px; height:" + myImage.height 
            + "px;" + imgStyle + ";" 
            + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" 
            + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"; 
        myImage.outerHTML = strNewHTML; 
    } 
} 

 

 

在页面中需要用到 PNG 图片的地方,添加

onload="fixPNG(this)"

 

 

 

如:

<img src="apple.png" alt="PNG" style="border:1px solid #999;" onload="fixPNG(this)" />
posted @ 2010-07-24 19:39  qianlifeng  阅读(718)  评论(0编辑  收藏  举报