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 相关文章推荐
用Javascript 和 CSS 实现脚注(Footnote)效果
Sep 09 Javascript
javascript权威指南 学习笔记之null和undefined
Sep 25 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 Javascript
setTimeout自动触发一个js的方法
Jan 15 Javascript
JavaScript中检查对象property的存在性方法介绍
Dec 30 Javascript
js获取form表单所有数据的简单方法
Aug 18 Javascript
js使用原型对象(prototype)需要注意的地方
Aug 28 Javascript
vue路由拦截及页面跳转的设置方法
May 24 Javascript
element中table高度自适应的实现
Oct 21 Javascript
JavaScript十大取整方法实例教程
Dec 03 Javascript
详解微信小程序「渲染层网络层错误」的解决方法
Jan 06 Javascript
使用Vue.js和MJML创建响应式电子邮件
Mar 23 Vue.js
聊一聊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限制页面只能在微信自带浏览器访问的代码
2014/01/15 PHP
php实现学生管理系统
2020/03/21 PHP
php cookie用户登录的详解及实例代码
2017/01/03 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
2018/10/16 PHP
div+css布局的图片连续滚动js实现代码
2010/05/04 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
2014/03/25 Javascript
自己使用jquery写的一个无缝滚动的插件
2014/04/30 Javascript
JavaScript中的toDateString()方法使用详解
2015/06/12 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
2016/10/29 Javascript
react实现pure render时bind(this)隐患需注意!
2017/03/09 Javascript
微信小程序 实现点击添加移除class
2017/06/12 Javascript
react-native-tab-navigator组件的基本使用示例代码
2017/09/07 Javascript
vue进行图片的预加载watch用法实例讲解
2018/02/07 Javascript
Node.js中DNS模块学习总结
2018/02/28 Javascript
react-native封装插件swiper的使用方法
2018/03/20 Javascript
详解jQuery-each()方法
2019/03/13 jQuery
JS实现扫码枪扫描二维码功能
2020/01/03 Javascript
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
2020/06/02 Javascript
Python存取XML的常见方法实例分析
2017/03/21 Python
致Python初学者 Anaconda入门使用指南完整版
2018/04/05 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
django的登录注册系统的示例代码
2018/05/14 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
python让函数不返回结果的方法
2020/06/22 Python
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
德国在线香料制造商:Gewürzland
2020/03/10 全球购物
手术室护士自我鉴定
2013/10/14 职场文书
商务英语专业求职信范文
2014/01/28 职场文书
视光学专业自荐信
2014/06/24 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
求职信范文怎么写
2015/03/19 职场文书
python中pandas.read_csv()函数的深入讲解
2021/03/29 Python
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL