JS实现获取图片大小和预览的方法完整实例【兼容IE和其它浏览器】


Posted in Javascript onApril 24, 2017

本文实例讲述了JS实现获取图片大小和预览的方法。分享给大家供大家参考,具体如下:

<!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=utf-8" />
<title>JS获取图片大小和预览【兼容IE和其它浏览器】</title>
</head>
<script type="application/javascript">
function previewImage(oImage,preViewId){
  if(!oImage.value.match(/.jpg|.jpeg|.gif|.png|.bmp/i)){
    //alert('图片格式无效!');
    return;
  }
  var imgPath = "";
  if(document.all){
    //低版本IE浏览器
    oImage.select();
    imgPath = document.selection.createRange().text;
    //使用滤镜效果
    var tempValue = "progid:DXImageTransform.Microsoft.AlphaImageLoader("
    tempValue += "enabled='true',sizingMethod='scale',src=\"" + imgPath + "\")";
    document.getElementById(preViewId).style.filter = tempValue;
  }else{
    //非IE浏览器,如火狐google等浏览器
    imgPath = window.URL.createObjectURL(oImage.files[0]); //FF7.0以上
    document.getElementById(preViewId).src = imgPath; //显示预览图
  }
};
function getFileSize(objFile){
  var fileSize = objFile.fileSize || 0;
  if(fileSize == 0) {
    fileSize = objFile.files[0].size;
  }
  return fileSize;
}
function imageChange(){
  var oImg = document.getElementById("imageFile01");
  previewImage(oImg,"preview");
  var fileSize = getFileSize(oImg);
  fileSize = Math.ceil(fileSize / 1024) + "KB";
  var filePath =oImg.value;
  var agent = window.navigator.userAgent;
  var tempValue = "<br>File size: " + fileSize;
  tempValue += "<br>File path: " + filePath;
  tempValue += "<br>agent=" + agent;
  document.getElementById("imageInfo").innerHTML = tempValue;
};
</script>
<body>
<h3>JS获取图片大小和预览【兼容IE和其它浏览器】</h3>
<img id="preview" style="width: 100px; height: 60px; border: 0px;" />
<br>
<input name="imageFile01" id="imageFile01" type="file" onchange="javascript:imageChange();" />
<br>
<div id="imageInfo"></div>
</body>
</html>

运行效果图如下:

JS实现获取图片大小和预览的方法完整实例【兼容IE和其它浏览器】

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
用javascript自动显示最后更新时间
Mar 15 Javascript
JavaScipt基本教程之JavaScript语言的基础
Jan 16 Javascript
与jquery serializeArray()一起使用的函数,主要来方便提交表单
Jan 31 Javascript
微信小程序 UI与容器组件总结
Feb 21 Javascript
JS使用正则表达式验证身份证号码
Jun 23 Javascript
javaScript实现复选框全选反选事件详解
Nov 20 Javascript
微信小程序实现日历功能
Nov 27 Javascript
详解Vue-Router源码分析路由实现原理
May 15 Javascript
vue实现搜索功能
May 28 Javascript
Vue3.0中的monorepo管理模式的实现
Oct 14 Javascript
Vue v-for中的 input 或 select的值发生改变时触发事件操作
Aug 31 Javascript
JavaScript canvas实现雨滴特效
Jan 10 Javascript
angular中实现控制器之间传递参数的方式
Apr 24 #Javascript
使用vue框架 Ajax获取数据列表并用BootStrap显示出来
Apr 24 #Javascript
JS实现加载和读取XML文件的方法详解
Apr 24 #Javascript
JS简单获取日期相差天数的方法
Apr 24 #Javascript
Angular.js中控制器之间的传值详解
Apr 24 #Javascript
jquery submit()不能提交表单的解决方法
Apr 24 #jQuery
jquery实现异步加载图片(懒加载图片一种方式)
Apr 24 #jQuery
You might like
老照片 - 几十年前的收音机与人
2021/03/02 无线电
php中filter函数验证、过滤用户输入的数据
2014/01/13 PHP
Yii2增加验证码步骤详解
2016/04/25 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
JavaScript 获取当前时间戳的代码
2010/08/05 Javascript
修改jquery里的dialog对话框插件为框架页(iframe) 的方法
2010/09/14 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
Flexigrid在IE下不显示数据的处理的解决方法
2013/10/24 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
jQuery获得指定元素坐标的方法
2015/04/14 Javascript
javascript实现tab切换的四种方法
2015/11/05 Javascript
实现div内部滚动条滚动到底部和顶部的代码
2017/11/15 Javascript
webpack打包js文件及部署的实现方法
2017/12/18 Javascript
完美解决axios在ie下的兼容性问题
2018/03/05 Javascript
js中Generator函数的深入讲解
2019/04/07 Javascript
区分vue-router的hash和history模式
2020/10/03 Javascript
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
[43:49]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python调用java的Webservice示例
2014/03/10 Python
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
Python 加密的实例详解
2017/10/09 Python
Python中PyQt5/PySide2的按钮控件使用实例
2019/08/17 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
2020/08/24 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
python3中数组逆序输出方法
2020/12/01 Python
termux中matplotlib无法显示中文问题的解决方法
2021/01/11 Python
你对IPv6了解程度
2016/02/09 面试题
网络工程师的自我评价
2013/10/02 职场文书
环卫工人节活动总结
2014/08/29 职场文书
北京天坛导游词
2015/02/12 职场文书
护士求职简历自我评价
2015/03/10 职场文书
入党积极分子党支部意见
2015/06/02 职场文书
Springboot使用Spring Data JPA实现数据库操作
2021/06/30 Java/Android
Python装饰器详细介绍
2022/03/25 Python
实战Python爬虫爬取酷我音乐
2022/04/11 Python