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 相关文章推荐
JS获取dom 对象 ajax操作 读写cookie函数
Nov 18 Javascript
JS随即打乱数组实现代码
Dec 03 Javascript
基于KMP算法JavaScript的实现方法分析
May 03 Javascript
jQuery .attr()和.removeAttr()方法操作元素属性示例
Jul 16 Javascript
用JavaScript实现动画效果的方法
Jul 20 Javascript
js验证上传图片的方法
May 12 Javascript
vue 项目如何引入微信sdk接口的方法
Dec 18 Javascript
Vue-Router模式和钩子的用法
Feb 28 Javascript
vue.js实现标签页切换效果
Jun 07 Javascript
详解基于electron制作一个node压缩图片的桌面应用
Jan 29 Javascript
Vue实现计算器计算效果
Aug 17 Javascript
原生js实现放大镜组件
Jan 22 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
PHP与SQL注入攻击[二]
2007/04/17 PHP
基于initPHP的框架介绍
2013/04/18 PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
2014/10/21 PHP
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
2013/01/29 Javascript
js Date概念详细介绍
2013/11/22 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
javascript常用方法总结
2015/05/14 Javascript
javascript弹出窗口实现代码
2015/11/12 Javascript
图解js图片轮播效果
2015/12/20 Javascript
微信+angularJS的SPA应用中用router进行页面跳转,jssdk校验失败问题解决
2016/09/09 Javascript
EasyUI为Numberbox添加blur事件的方法
2017/03/05 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
JS复杂判断的更优雅写法代码详解
2018/11/07 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
jquery将信息遍历到界面上实例代码
2020/01/21 jQuery
vue深度监听(监听对象和数组的改变)与立即执行监听实例
2020/09/04 Javascript
vue 动态生成拓扑图的示例
2021/01/03 Vue.js
Node.js中的异步生成器与异步迭代详解
2021/01/31 Javascript
将python文件打包成EXE应用程序的方法
2019/05/22 Python
Python爬虫之爬取淘女郎照片示例详解
2020/07/28 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
Python使用xpath实现图片爬取
2020/09/16 Python
美国第一香水网站:Perfume.com
2017/01/23 全球购物
廉政教育心得体会
2014/01/01 职场文书
班队活动设计方案
2014/01/30 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
大学学习个人的自我评价
2014/02/18 职场文书
导游个人求职信
2014/04/25 职场文书
校园文明标语
2014/06/13 职场文书
英语专业自荐书
2014/06/13 职场文书
派出所副所长四风问题个人整改措施思想汇报
2014/10/13 职场文书
前台接待员岗位职责
2015/04/15 职场文书
党员“一帮一”活动总结
2015/05/07 职场文书
解决Mysql多行子查询的使用及空值问题
2022/01/22 MySQL