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 相关文章推荐
jQuery 1.9移除了$.browser可以使用$.support来替代
Sep 03 Javascript
js实现div层缓慢收缩与展开的方法
May 11 Javascript
JS+CSS实现的日本门户网站经典选项卡导航效果
Sep 27 Javascript
JavaScript实现页面定时刷新(定时器,meta)
Oct 12 Javascript
解析ajaxFileUpload 异步上传文件简单使用
Dec 30 Javascript
vue2 中如何实现动态表单增删改查实例
Jun 09 Javascript
JavaScript实现图片拖曳效果
Sep 08 Javascript
原生JS实现手动轮播图效果实例代码
Nov 22 Javascript
vue使用pdfjs显示PDF可复制的实现方法
Dec 14 Javascript
Vue框架TypeScript装饰器使用指南小结
Feb 18 Javascript
Vue项目从webpack3.x升级webpack4不完全指南
Apr 28 Javascript
JavaScript交换变量常用4种方法解析
Sep 02 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中mysql操作buffer用法详解
2015/03/19 PHP
Laravel搭建后台登录系统步骤详解
2016/07/26 PHP
Yii针对添加行的增删改查操作示例
2016/10/18 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
PHP+Oracle本地开发环境搭建方法详解
2019/04/01 PHP
jquery中eq和get的区别与使用方法
2011/04/14 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
2013/12/01 Javascript
一个简单的实现下拉框多选的插件可移植性比较好
2014/05/05 Javascript
js实现圆盘记速表
2015/08/03 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
跟我学习javascript的prototype原型和原型链
2015/11/18 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
怎样判断jQuery当前元素是隐藏还是显示
2016/11/23 Javascript
angularjs2 ng2 密码隐藏显示的实例代码
2017/08/01 Javascript
JavaScript实现树的遍历算法示例【广度优先与深度优先】
2017/10/26 Javascript
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
jQuery实现的电子时钟效果完整示例
2018/04/28 jQuery
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
layer iframe 设置关闭按钮的方法
2019/09/12 Javascript
Python 文件管理实例详解
2015/11/10 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
Django框架使用富文本编辑器Uedit的方法分析
2018/07/31 Python
Python字符串的一些操作方法总结
2019/06/10 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
Pycharm如何自动生成头文件注释
2020/11/14 Python
一款纯css3实现的圆形旋转分享按钮旋转角度可自己调整
2014/09/02 HTML / CSS
高中生期末评语
2014/01/28 职场文书
21岁生日感言
2014/02/27 职场文书
学习雷锋精神心得体会范文
2014/03/12 职场文书
赔偿协议书范本
2014/04/15 职场文书
贷款委托书
2014/08/01 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
医院办公室主任岗位职责
2015/04/01 职场文书
python控制台打印log输出重复的解决方法
2021/05/14 Python