• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Html5上传图片 移动端、PC端通用代码

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

     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 defer和async的区别
    下一篇:你不知道的5个HTML5新功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

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