Html5上传图片 移动端、PC端通用代码


Posted in HTML / CSS onJune 08, 2016

废话不多说了,说一下今天给大家分享的是 html5上传图片。我们是在移动端使用的,但是这个在pc上也通用兼容性我只在谷歌测试过。之前一直用的angular写的《用HTML5的File API做上传图片预览能》。今天摒弃angular的东西分享一个html5 + js 图片上传案例。那么今天还是按照一定的步骤来讲吧。

Html5上传图片 移动端、PC端通用代码

 HTML 第一步创建html,我们在页面中放置一个文件选择的input#upload(PS:偷懒一下,这里就不再次写案例了直接复制的我们的页面)

CSS Code复制内容到剪贴板
  1. <div class="con4">     
  2.  <span class="btn upload">上传<input type="file" class="upload_pic" id="upload" /></span>     
  3. </div>     

CSS注:css 写的有些乱哈,看不懂的可以问我,或者直接自己写一下就ok。

CSS Code复制内容到剪贴板
  1. con{      
  2.      width: %;      
  3.      heightauto;      
  4.      overflowhidden;      
  5.      margin: % auto  auto;      
  6.      color#FFFFFF;      
  7. }      
  8. con .btn{      
  9.      width: %;      
  10.      height: px;      
  11.      line-height: px;      
  12.      text-aligncenter;      
  13.      background#dbc;      
  14.      displayblock;      
  15.      font-size: px;      
  16.      border-radius: px;      
  17. }      
  18. upload{      
  19.      floatleft;      
  20.      positionrelative;      
  21. }      
  22. upload_pic{      
  23.      displayblock;      
  24.      width: %;      
  25.      height: px;      
  26.      positionabsolute;      
  27.      left: ;      
  28.      top: ;      
  29.      opacity: ;      
  30.      border-radius: px;      
  31. }     

Javascript 

通过getElementById获取节点,判断浏览器的兼容性,对于不支持FileReader接口的浏览器将给出一个提示并禁用input,否则监听input的change事件。

JavaScript Code复制内容到剪贴板
  1. //获取上传按钮      
  2. var input = document.getElementById("upload");       
  3. if(typeof FileReader==='undefined'){       
  4.      //result.innerHTML = "抱歉,你的浏览器不支持 FileReader";       
  5.      input.setAttribute('disabled','disabled');       
  6. }else{       
  7.      input.addEventListener('change',readFile,false);       
  8. }  

然后,当file_input的change事件触发时,调用函数readFile()。在readFile中,我们首先获取file对象,然后通过file的type属性来检测文件类型,我们当然只允许选择图像类型的文件,然后我们new一个FileReader实例,并调用readAsDataURL方法来读取选中的图像文件,最后在onload事件中,获取到成功读取的文件内容,并以插入一个img节点的方式显示选中的图片。

JavaScript Code复制内容到剪贴板
  1. function readFile(){       
  2.      var file = this.files[];       
  3.      if(!/image\/\w+/.test(file.type)){       
  4.          alert("文件必须为图片!");       
  5.          return false;       
  6.      }       
  7.      var reader = new FileReader();       
  8.      reader.readAsDataURL(file);       
  9.      //当文件读取成功便可以调取上传的接口,想传哪里传哪里(PS: 你们可以把你们的靓照偷偷发给我!)      
  10.      reader.onload = function(e){       
  11.          var data = this.result.split(',');      
  12.          var tp = (file.type == 'image/png')? 'png''jpg';      
  13.          var a = data[];      
  14.          //需要上传到服务器的在这里可以进行ajax请求      
  15.          ... ...      
  16.      }      
  17. };     

写到这里我们已经完成了图片上传的功能了,大家有兴趣的自己动手尝试一下,不懂的地方或者我写错的地方一定要找我哦。 FileReader的方法和事件

Html5上传图片 移动端、PC端通用代码

HTML / CSS 相关文章推荐
CSS3媒体查询Media Queries基础学习教程
Feb 29 HTML / CSS
图解CSS3制作圆环形进度条的实例教程
May 26 HTML / CSS
CSS3实现鼠标悬停显示扩展内容
Aug 24 HTML / CSS
Html5如何唤起百度地图App的方法
Jan 27 HTML / CSS
HTML5中如何显示视频呢 HTML5视频播放demo
Jun 08 HTML / CSS
html5绘制时钟动画
Dec 15 HTML / CSS
使用HTML5的表单验证的简单示例
Sep 09 HTML / CSS
微信html5页面调用第三方位置导航的示例
Mar 14 HTML / CSS
HTML5高仿微信聊天、微信聊天表情|对话框|编辑器功能
Apr 23 HTML / CSS
HTML5 textarea高度自适应的两种方案
Apr 08 HTML / CSS
CSS 文字装饰 text-decoration & text-emphasis 详解
Apr 06 HTML / CSS
CSS的calc函数用法小结
Jun 25 HTML / CSS
你不知道的5个HTML5新功能
Jun 28 #HTML / CSS
HTML5里autofocus自动聚焦属性使用介绍
Jun 22 #HTML / CSS
HTML5 placeholder属性详解
Jun 22 #HTML / CSS
HTML5 本地存储 LocalStorage详解
Jun 24 #HTML / CSS
HTML5中的nav标签学习笔记
Jun 24 #HTML / CSS
HTML5 canvas基本绘图之绘制线段
Jun 27 #HTML / CSS
浅谈HTML5新增及移除的元素
Jun 27 #HTML / CSS
You might like
php+mysql实现简单的增删改查功能
2015/07/13 PHP
PHP添加图片水印、压缩、剪切的封装类
2015/08/17 PHP
PHP的Yii框架的常用日志操作总结
2015/12/08 PHP
zend framework中使用memcache的方法
2016/03/04 PHP
PHP实现的登录,注册及密码修改功能分析
2016/11/25 PHP
PHP实现下载远程图片保存到本地的方法
2017/06/19 PHP
深入理解PHP的远程多会话调试
2017/09/21 PHP
区分JS中的undefined,null,&quot;&quot;,0和false
2007/03/08 Javascript
jQuery 幻灯片插件(带缩略图功能)
2011/01/24 Javascript
JavaScript:Div层拖动效果实例代码
2013/08/06 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
浅谈JavaScript Math和Number对象
2015/01/26 Javascript
JavaScript函数学习总结以及相关的编程习惯指南
2015/11/16 Javascript
JavaScript通过使用onerror设置默认图像显示代替alt
2016/03/01 Javascript
微信小程序 textarea 详解及简单使用方法
2016/12/05 Javascript
详解Python设计模式编程中观察者模式与策略模式的运用
2016/03/02 Python
PYTHON 中使用 GLOBAL引发的一系列问题
2016/10/12 Python
python 实时得到cpu和内存的使用情况方法
2018/06/11 Python
Python爬虫框架Scrapy基本用法入门教程
2018/07/26 Python
python创建与遍历List二维列表的方法
2019/08/16 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
Python切图九宫格的实现方法
2019/10/10 Python
python框架flask入门之路由及简单实现方法
2020/06/07 Python
在线服装零售商:SheIn
2016/07/22 全球购物
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
行政专员岗位职责
2014/01/02 职场文书
优秀大学生求职自荐信范文
2014/04/19 职场文书
2015年宣传工作总结
2015/04/08 职场文书
2015年乡镇纪检工作总结
2015/04/22 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
2016年会开场白台词
2015/06/01 职场文书
初中军训感言
2015/08/01 职场文书
初级职称评定工作总结
2015/08/13 职场文书
MySQL8.0.18配置多主一从
2021/06/21 MySQL
python 多态 协议 鸭子类型详解
2021/11/27 Python
苹果的回收机器人可以通过拆解iPhone获取大量的金和铜并外公布了环境保护最新进展
2022/04/21 数码科技