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 相关文章推荐
OfflineSave离线保存代码再次发布使用说明
May 23 Javascript
JavaScript小技巧 2.5 则
Sep 12 Javascript
JQuery触发radio或checkbox的change事件
Dec 18 Javascript
JS注册/移除事件处理程序(ExtJS应用程序设计实战)
May 07 Javascript
javascript上传图片前预览图片兼容大多数浏览器
Oct 25 Javascript
AngularJS基础 ng-readonly 指令简单示例
Aug 02 Javascript
jQuery实现大图轮播
Feb 13 Javascript
javascript简单链式调用案例分析
May 10 Javascript
Angular2实现组件交互的方法分析
Dec 19 Javascript
JS中的回调函数实例浅析
Mar 21 Javascript
Vue路由切换时的左滑和右滑效果示例
May 29 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 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 编写的日历
2006/10/09 PHP
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
PHP面向对象程序设计(OOP)之方法重写(override)操作示例
2018/12/21 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
PHP程序员简单的开展服务治理架构操作详解(三)
2020/05/14 PHP
ASP SQL防注入的方法
2008/12/25 Javascript
jQuery+CSS 实现随滚动条增减的汽水瓶中的液体效果
2011/09/26 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
2012/02/02 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
JS长整型精度问题实例分析
2015/01/13 Javascript
vue.js表格分页示例
2016/10/18 Javascript
react-router中的属性详解
2017/06/01 Javascript
详解ES6中的Map与Set集合
2019/03/22 Javascript
对node通过fs模块判断文件是否是文件夹的实例讲解
2019/06/10 Javascript
node.js通过Sequelize 连接MySQL的方法
2020/12/28 Javascript
python开发的小球完全弹性碰撞游戏代码
2013/10/15 Python
Pthon批量处理将pdb文件生成dssp文件
2015/06/21 Python
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
python 矩阵增加一行或一列的实例
2018/04/04 Python
python+opencv实现高斯平滑滤波
2020/07/21 Python
Python Tensor FLow简单使用方法实例详解
2020/01/14 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Python实现病毒仿真器的方法示例(附demo)
2020/02/19 Python
Python读写csv文件流程及异常解决
2020/10/20 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
全球最大最受欢迎的旅游社区:Tripadvisor
2017/11/03 全球购物
NBA欧洲商店(西班牙):NBA Europe Store ES
2019/04/16 全球购物
小学教师自我鉴定范文
2014/03/20 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
2014年基建工作总结
2014/12/12 职场文书
2015年学生资助工作总结
2015/05/25 职场文书
比赛口号霸气押韵
2015/12/24 职场文书
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js