js图片上传前预览功能(兼容所有浏览器)


Posted in Javascript onAugust 24, 2016

网上找到的一份文件上传前预览的代码,转自JavaScript 图片的上传前预览(兼容所有浏览器)

<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
 <style type="text/css">
 #preview,
 .img,
 img {
  width: 200px;
  height: 200px;
 }
 
 #preview {
  border: 1px solid #000;
 }
 </style>
</head>

<body>
 <div id="preview"></div>
 <input type="file" onchange="preview(this)" />
 <script type="text/javascript">
 function preview(file) {
  var prevDiv = document.getElementById('preview');
  if (file.files && file.files[0]) {
   var reader = new FileReader();
   reader.onload = function(evt) {
    prevDiv.innerHTML = '<img src="' + evt.target.result + '" />';
   }
   reader.readAsDataURL(file.files[0]);
  } else {
   prevDiv.innerHTML = '<div class="img" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'' + file.value + '\'"></div>';
  }
 }
 </script>
</body>
</html>

实现要点

● 对于 Chrome、Firefox、IE10 使用 FileReader 来实现。 
● 对于 IE6~9 使用滤镜 filter:progid:DXImageTransform.Microsoft.AlphaImageLoader 来实现。
测试了一下IE8+都没有问题。但是IE7下file.value被浏览器去掉了文件路径分割线从而显示不出来 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery实现点击TreeView文本父节点展开/折叠子节点
Jan 10 Javascript
基于jquery的禁用右键、文本选择功能、复制按键的实现代码
Aug 27 Javascript
javascript 常见功能汇总
Jun 11 Javascript
JavaScript程序设计之JS调试
Dec 09 Javascript
JS中检测数据类型的几种方式及优缺点小结
Dec 12 Javascript
JS实现多级菜单中当前菜单不随页面跳转样式而发生变化
May 30 Javascript
jQuery+ajax实现局部刷新的两种方法
Jun 08 jQuery
jQuery实现table中两列CheckBox只能选中一个的示例
Sep 22 jQuery
JavaScript数据结构之双向链表定义与使用方法示例
Oct 27 Javascript
Angular父组件调用子组件的方法
Apr 02 Javascript
对layui中的onevent 和event的使用详解
Sep 06 Javascript
微信小程序12行js代码自己写个滑块功能(推荐)
Jul 15 Javascript
聊一聊jQuery插件uploadify使用方法
Aug 24 #Javascript
前端程序员必须知道的高性能Javascript知识
Aug 24 #Javascript
关于JavaScript数组你所不知道的3件事
Aug 24 #Javascript
详解Javascript ES6中的箭头函数(Arrow Functions)
Aug 24 #Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
Aug 24 #Javascript
jQuery Raty 一款不错的星级评分插件
Aug 24 #Javascript
jQuery实现自动输入email、时间和域名的方法
Aug 24 #Javascript
You might like
php Undefined index和Undefined variable的解决方法
2008/03/27 PHP
使用PHP编写的SVN类
2013/07/18 PHP
CodeIgniter上传图片成功的全部过程分享
2013/08/12 PHP
phpstrom使用xdebug配置方法
2013/12/17 PHP
php简单获取文件扩展名的方法
2015/03/24 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
Yii框架实现对数据库的CURD操作示例
2019/09/03 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
2012/01/15 Javascript
jquery ajax应用中iframe自适应高度问题解决方法
2014/04/12 Javascript
2014年最火的Node.JS后端框架推荐
2014/10/27 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
利用node.js搭建简单web服务器的方法教程
2017/02/20 Javascript
VUE多层路由嵌套实现代码
2017/05/15 Javascript
JQuery 选择器、DOM节点操作练习实例
2017/09/28 jQuery
灵活使用console让js调试更简单的方法步骤
2019/04/23 Javascript
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
node.js中stream流中可读流和可写流的实现与使用方法实例分析
2020/02/13 Javascript
Python多线程编程简单介绍
2015/04/13 Python
Python解惑之True和False详解
2017/04/24 Python
python实现学生管理系统
2018/01/11 Python
对Python中range()函数和list的比较
2018/04/19 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
pyqt5 QlistView列表显示的实现示例
2020/03/24 Python
django model通过字典更新数据实例
2020/04/01 Python
Python使用sys.exc_info()方法获取异常信息
2020/07/23 Python
美国在线购物频道:Shop LC
2019/04/21 全球购物
Eclipse面试题
2014/03/22 面试题
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
大学生咖啡店创业计划书
2014/01/21 职场文书
工会主席事迹材料
2014/06/03 职场文书
乡镇镇长个人整改措施
2014/10/01 职场文书
2015中学政教处工作总结
2015/07/22 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang
mysql left join快速转inner join的过程
2021/06/30 MySQL