多种方式实现js图片预览


Posted in Javascript onDecember 12, 2016

先贴代码,之后完善:

<!doctype html>
<html lang="en">
 <head>
 <meta charset="UTF-8">
 <meta name="Generator" content="EditPlus®">
 <meta name="Author" content="">
 <meta name="Keywords" content="">
 <meta name="Description" content="">
 <title>js多种方式图片预览-持续更新</title>
 </head>
 <body>
 <body> 
 <input type="file" id="file" value="选择" accept="image/*">
 <div style="width:300px;height:300px;border:1px solid #ccc">
 <img id="img_show" src="" />
 </div>

 </body>
 <script type="text/javascript" src="./jquery-3.1.1.min.js"></script>
 <script type="text/javascript">
 //设置自己的变量存储区
 var Util = {
   file : $("#file"),
   image_show:$("#img_show")
 }


 Util.file.onchange=function(f){
  if(this.files[0].type.indexOf('image')<0){
   alert("请选择图片文件!");
   return; 
  }

  if(this.files[0].size/1024 > 5*1024){
   alert("图片过大,请选择5M以下的文件");
   return;
  }

  if(typeof FileReader=='undefined'){//如果支持,typeOf返回的也是 Function
   alert("您的浏览器不支持html5 fileReader请更换浏览器重试!");
   return;
  }


  var reader = new FileReader();
  reader.readAsDataURL(this.files[0]);//这里传的是一个blob ,其实file对象就是继承自bolob
  reader.onload=function(e){
   console.log(reader.result);//这里拿到的是一个base64编码后的图片
   Util.image_show.src=reader.result;
  }

 };

 </script>
</html>

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

Javascript 相关文章推荐
JavaScript 封装Ajax传递的数据代码
Jun 05 Javascript
一张表格告诉你windows.onload()与$(document).ready()的区别
May 16 Javascript
JavaScript中使用Object.create()创建对象介绍
Dec 30 Javascript
jsMind通过鼠标拖拽的方式调整节点位置
Apr 13 Javascript
Javascript函数式编程简单介绍
Oct 11 Javascript
js密码强度校验
Nov 10 Javascript
javascript实现数字倒计时特效
Mar 30 Javascript
理解 javascript 中的函数表达式与函数声明
Jul 07 Javascript
js数组方法reduce经典用法代码分享
Jan 07 Javascript
Express之托管静态文件的方法
Jun 01 Javascript
JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法
Jun 07 Javascript
React中使用async validator进行表单验证的实例代码
Aug 17 Javascript
JavaScript实现多栏目切换效果
Dec 12 #Javascript
解决同一页面中两个iframe互相调用jquery,js函数的方法
Dec 12 #Javascript
AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)
Dec 12 #Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
Dec 12 #Javascript
AngularJS封装指令方法详解
Dec 12 #Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
Dec 12 #Javascript
最好用的Bootstrap fileinput.js文件上传组件
Dec 12 #Javascript
You might like
PHP实现网上点歌(二)
2006/10/09 PHP
yii实现使用CUploadedFile上传文件的方法
2015/12/28 PHP
vmware linux系统安装最新的php7图解
2019/04/14 PHP
ExtJS GridPanel 根据条件改变字体颜色
2010/03/08 Javascript
jquery命令汇总,方便使用jquery的朋友
2012/06/26 Javascript
jquery实现带复选框的表格行选中删除时高亮显示
2013/08/01 Javascript
NodeJS中Buffer模块详解
2015/01/07 NodeJs
js实现类似于add(1)(2)(3)调用方式的方法
2015/03/04 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
ionic实现滑动的三种方式
2016/08/27 Javascript
JS 拼凑字符串的简单实例
2016/09/02 Javascript
Javascript中this绑定的3种方法与比较
2016/10/13 Javascript
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
微信小程序收藏功能的实现代码
2018/06/12 Javascript
基于Bootstrap下拉框插件bootstrap-select使用方法详解
2018/08/07 Javascript
vue 中 命名视图的用法实例详解
2019/08/14 Javascript
微信头像地址失效踩坑记附带解决方案
2019/09/23 Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
2019/09/28 Javascript
VUE项目axios请求头更改Content-Type操作
2020/07/24 Javascript
vue页面引入three.js实现3d动画场景操作
2020/08/10 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
nuxt 每个页面head标签内容设置方式
2020/11/05 Javascript
vue 解决mintui弹窗弹起来,底部页面滚动bug问题
2020/11/12 Javascript
python基础教程之基本数据类型和变量声明介绍
2014/08/29 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
Python subprocess库的使用详解
2018/10/26 Python
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
Python3.5实现的罗马数字转换成整数功能示例
2019/02/25 Python
解决Python 异常TypeError: cannot concatenate 'str' and 'int' objects
2020/04/08 Python
薇姿法国官网:Vichy法国
2021/01/28 全球购物
地理科学专业毕业生求职信
2013/10/15 职场文书
汽车维修专业个人求职信范文
2014/01/01 职场文书
设计师个人求职信范文
2014/02/02 职场文书
工作评语大全
2014/04/26 职场文书
python获取对象信息的实例详解
2021/07/07 Python
SQL Server数据库备份和恢复数据库的全过程
2022/06/14 SQL Server