在 IE6 中,可以很方便地利用 img 的 src 属性,实现本地图片预览,然而在 IE7 中,这种办法却行不通。需要用 AlphaImageLoader


AlphaImageLoader

说明:

在对象容器边界内,在对象的背景和内容之间显示一张图片。并提供对此图片的剪切和改变尺寸的操作。如果载入的是PNG(Portable Network Graphics)格式,则0%-100%的透明度也被提供。

语法:

filter : progid:DXImageTransform.Microsoft.AlphaImageLoader ( enabled=bEnabled , sizingMethod=sSize , src=sURL )

enabled:可选项。布尔值(Boolean)。设置或检索滤镜是否激活。
true:默认值。滤镜激活。
false:滤镜被禁止。

sizingMethod:可选项。字符串(String)。设置或检索滤镜作用的对象的图片在对象容器边界内的显示方式。
crop:剪切图片以适应对象尺寸。
image:默认值。增大或减小对象的尺寸边界以适应图片的尺寸。
scale:缩放图片以适应对象的尺寸边界。

src:必选项。字符串(String)。使用绝对或相对 url 地址指定背景图像。假如忽略此参数,滤镜将不会作用。


具体操作:

  1. 为预览区域(比如要在某个 div 中预览)添加样式:filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);。
  2. 为 AlphaImageLoader 设置 src 属性。

示例代码:

<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>本地图片预览代码(支持 IE6、IE7)</title>
<style type="text/css">
#newPreview
{}{
    filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);
}
</style>
<script type="text/javascript" language="javascript">
<!--
function PreviewImg(imgFile)
{
    //原来的预览代码,不支持 IE7。
    var oldPreview = document.getElementById("oldPreview");
    oldPreview.innerHTML = "<img src=\"file:\\\\" + imgFile.value + "\" width=\"80\" height=\"60\" />";
    
    //新的预览代码,支持 IE6、IE7。
    var newPreview = document.getElementById("newPreview");
    newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;
    newPreview.style.width = "80px";
    newPreview.style.height = "60px";
}
-->
</script>
</head>

<body>

<p>说明:以下针对的是互联网情况,如果您在本地作测试,比如输入的地址是:http://127.0.0.1/,则可以看到全部预览。</p>

<hr />

<p>如果您使用的是 IE6,则可以看到以下预览;如果您使用的是 IE7,则看不到以下预览。</p>
<div id="oldPreview"></div>

<hr />

<p>不论您使用的是 IE6 还是 IE7,均可以看到以下预览。</p>
<div id="newPreview"></div>

<hr />

<p>请选择一个图片进行预览:<input type="file" size="20" onchange="javascript:PreviewImg(this);" /></p>

</body>

</html>

转载于:https://www.cnblogs.com/ami/archive/2007/06/27/797590.html

本地图片预览代码(支持 IE6、IE7)相关推荐

  1. input file本地图片预览的方法(兼容IE、Chrome和Firefox)

    JS兼容各个浏览器的本地图片上传即时预览效果 2014-02-26      我来说两句       收藏     我要投稿 很早以前 在杭州银行工作曾经碰到这么一个需求,当时也是纠结了很久,也是go ...

  2. js本地图片预览,兼容ie[6-9]、火狐、Chrome17+、Opera11+、Maxthon3

    //js本地图片预览,兼容ie[6-9].火狐.Chrome17+.Opera11+.Maxthon3 <!DOCTYPE html> <html xmlns="http: ...

  3. js本地图片预览,兼容ie[6-9]、火狐、Chrome17+、Opera11+、Maxthon3tr td style=width:35%; class=noBorderL

    <tr> <td style="width:35%;" class="noBorderL firstTD">资格证图片</td&g ...

  4. 兼容ie[6-9]、火狐、Chrome、opera、maxthon3、360浏览器的js本地图片预览

    html代码 <div id="divPreview">      <img id="imgHeadPhoto" src="Imag ...

  5. 浅谈js本地图片预览

    最近在工作中遇到一个问题,就是实现一个反馈页面,这个反馈页面的元素有反馈主题.反馈类型.反馈内容.反馈人联系电话以及反馈图片.前端将这些反馈的元素POST给后台提供的接口:实现这个工作的步骤就是:页面 ...

  6. Javascript 本地图片预览

    IE 的本地图片预览,使用 "file://localhost/"+file.value 的形式实现.或者使用 图片滤镜 来实现: Chrome  和 FireFox 浏览器,使用 ...

  7. H5 移动端 保存图片到本地 + 图片预览

    图片下载: 动态创建A链接,添加download属性和href属性,并触发点击事件 let alink = document.createElement('a'); alink.href = Url; ...

  8. 上传图片预览,支持IE6

    //说明:图片上传预览插件 //上传的时候可以生成固定宽高范围内的等比例缩放图//参数设置: //width 存放图片固定大小容器的宽 //height 存放图片固定大小容器的高 //imgDiv 页 ...

  9. [转]本地图片预览二三事

    FROM:http://blog.moocss.com/tutorials/javascript-tutorials/1354.html 上传图片是我们Web开发经常用到的一个功能,那当然少不了文件域 ...

  10. JS让本地图片预览不再难-jquery插件

    为什么80%的码农都做不了架构师?>>>    功能介绍 图片上传本地预览插件,Chrome, Firefox, IE 插件参数: width : 400, //预览宽度height ...

最新文章

  1. 百度短视频推荐系统的目标设计
  2. 【数据竞赛】Kaggle实战之单类别变量特征工程总结!
  3. windbg分析dmp蓝屏文件_手把手教你分析漏洞 : CVE-2018-8120
  4. listview在java中的使用_我的Android开发之路——ListView的使用
  5. es6中的类及es5类的实现
  6. Go-如何读取yaml,json,ini等配置文件
  7. grubbs检测c语言,Grubbs算法检测离群值
  8. python nlp_使用python在stanford-nlp中的回指解析
  9. 【转载】WebService到底是什么?
  10. 眼底图像血管增强与分割--(1)匹配滤波算法原理及实现
  11. CMU 15-213 Introduction to Computer Systems学习笔记(13) Exceptional Control Flow: Exceptions and Process
  12. 晶振波形不是正弦波_求助各位!有源晶振出来的波形是方波还是正弦波?
  13. java判断天数_Java判断两个日期相差天数的方法
  14. 两个tplink路由器有线桥接_【设置教程】TP-Link路由器有线桥接
  15. C语言程序_更改文件名后缀
  16. 域名未授权 / 该网站未授权,禁止使用 解决办法:
  17. 2021金三银四Java面试突击集锦
  18. cmap参数 plt_小坑记录:get_cmap参数区分大小写-阿里云开发者社区
  19. python中超集、子集、并集、交集、差集等
  20. bzoj4084 [Sdoi2015]bigyration题解

热门文章

  1. 记录Access数据库更新操作大坑一个
  2. 宏定义中#和##的用法
  3. 【第四次JAVA课,java语法基础】课件总结
  4. [shell]shell 中| || () {} 用法以及shell的逻辑与或非
  5. Python中元组,列表,字典的区别
  6. Don't Panic! KRACK 没你想象的那么糟
  7. 大龄屌丝自学笔记--Java零基础到菜鸟--006
  8. app上架,iCloud存储的内容过多问题。
  9. 【自爆系列】浅谈我前端开发的那些糗事
  10. 转Win 7 快捷键