IE浏览器PNG图片透明效果代码


Posted in Javascript onSeptember 02, 2008

首先看我们的<img>标签代码:
<img src="Example.png" border="0" alt="放大镜" />
我们将利用IE中特有的特效来满足这个要求,这就是AlphaImageLoader Filter (http://msdn.microsoft.com/library/default.asp?url=/workshop/author/filter/reference/filters/alphaimageloader.asp)

如何做?
将下面代码保存为correctPNG.js:

function correctPNG() 
{ 
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; margin:6px; height:" + img.height + "px;" + imgStyle + ";" 
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" 
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
img.outerHTML = strNewHTML 
i = i-1 
} 
} 
} 
window.attachEvent("onload", correctPNG);

然后在你需要透明的网页中的<head>....</head>区加入:<script type="text/javascript" src="correctPNG.js"></script>

在<body>区加入多个与<img src="Example.png" border="0" alt="放大镜" />类似的PNG图片,试试看?
另一种方法:

<html> 
<head> 
<title>alpha image</title> 
<style type="text/css"> 
.pngholder{ 
width:100px; 
height:100px; 
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='https://3water.com/attachments/200510/03_124401_ie.png'); 
} 
.pngalpha{ 
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0); 
background:url(https://3water.com/attachments/200510/03_124401_ie.png) no-repeat; 
width:100px; 
height:100px; 
} 
</style> 
</head> 
<body bgcolor="#3399ff#"> 
<!- And this is your code to implement the image -> 
<div>透明</div> 
<div class="pngholder"><div class="pngalpha"></div></div> 
<div>不透明</div> 
<img src="https://3water.com/attachments/200510/03_124401_ie.png"/> 
</body> 
</html>
Javascript 相关文章推荐
javascript 二维数组的实现与应用
Mar 16 Javascript
Grid得到选择行数据的方法总结
Jan 17 Javascript
js 创建书签小工具之理论
Feb 25 Javascript
基于jquery的点击链接插入链接内容的代码
Jul 31 Javascript
javascript抽象工厂模式详细说明
Dec 16 Javascript
javascript控制层显示或隐藏的方法
Jul 22 Javascript
深入解析Javascript闭包的功能及实现方法
Jul 10 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
Oct 10 Javascript
使用Curl命令查看请求响应时间方法
Nov 04 Javascript
jQuery替换节点元素的操作方法
Mar 18 jQuery
Vue使用NPM方式搭建项目
Oct 25 Javascript
基于javascript实现日历功能原理及代码实例
May 07 Javascript
JavaScript监测ActiveX控件是否已经安装过的代码
Sep 02 #Javascript
JQUERY CHECKBOX全选,取消全选,反选方法三
Aug 30 #Javascript
jquery复选框CHECKBOX全选、反选
Aug 30 #Javascript
JQUERY复选框CHECKBOX全选,取消全选
Aug 30 #Javascript
jquery HotKeys轻松搞定键盘事件代码
Aug 30 #Javascript
JQUERY THICKBOX弹出层插件
Aug 30 #Javascript
IE php关于强制下载文件的代码
Aug 23 #Javascript
You might like
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
浅析onsubmit校验表单时利用ajax的return false无效问题
2013/07/10 Javascript
JSON传递bool类型数据的处理方式介绍
2013/09/18 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
Node.js开源应用框架HapiJS介绍
2015/01/14 Javascript
JavaScript中使用Callback控制流程介绍
2015/03/16 Javascript
jquery实现右键菜单插件
2015/03/29 Javascript
js贪吃蛇网页版游戏特效代码分享(挑战十关)
2015/08/24 Javascript
详解使用nodeJs安装Vue-cli
2017/05/17 NodeJs
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
基于jQuery的左滑出现删除按钮的示例
2017/08/29 jQuery
vue中axios处理http发送请求的示例(Post和get)
2017/10/13 Javascript
vue2.0组件之间传值、通信的多种方式(干货)
2018/02/10 Javascript
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
微信小程序动态生成二维码的实现代码
2018/07/25 Javascript
vue+element导航栏高亮显示的解决方式
2019/11/12 Javascript
解决ele ui 表格表头太长问题的实现
2019/11/13 Javascript
mpvue微信小程序开发之实现一个弹幕评论
2019/11/24 Javascript
mpvue 项目初始化及实现授权登录的实现方法
2020/07/20 Javascript
vue 组件间的通信之子组件向父组件传值的方式
2020/07/29 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
从零学Python之入门(四)运算
2014/05/27 Python
举例讲解Linux系统下Python调用系统Shell的方法
2015/11/07 Python
使用python生成目录树
2018/03/29 Python
python生成不重复随机数和对list乱序的解决方法
2018/04/09 Python
Python中类的创建和实例化操作示例
2019/02/27 Python
解决Python二维数组赋值问题
2019/11/28 Python
Django 设置多环境配置文件载入问题
2020/02/25 Python
雅诗兰黛旗下走天然植物路线的彩妆品牌:Prescriptives
2016/08/14 全球购物
施工安全承诺书
2014/05/22 职场文书
铅球加油稿100字
2014/09/26 职场文书
二手车交易协议书标准版
2014/11/16 职场文书
2015中秋节晚会主持词
2015/07/01 职场文书
财务年终工作总结大全
2019/06/20 职场文书