在IE和VB中支持png图片透明效果

免费小技术

 1,使用js文件使IE支持png图片透明效果。
pngfix.js:
程序代码 程序代码

var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])
function fixPNG(myImage) 
{
    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   
    }
}

使用方法 :
在模板的<HEAD> 
<!--[if lt IE 7]>
<script defer type="text/javascript" src="pngfix.js"></script>
<![endif]-->

<img src="xyz.png" alt="foo" width="10" height="20" onload="fixPNG(this)">
高和宽不能去掉。方法来自autoit,详细说明可以看看原文http://homepage.ntlworld.com/bobosola/index.htm

2,vb程序使用png图片,做启动画面相当帮,这里有一个vb中读取png图片的类,我以前的一个程序也是使用的这个类实现的PNG透明效果启动画面。
附件中资源来自枕善居

文章评论