基于JavaScript FileReader上传图片显示本地链接

 更新时间:2016年05月27日 11:38:59   作者:小时光  
这篇文章主要为大家详细介绍了基于JavaScript FileReader上传图片显示本地链接的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

简介

使用FileReader对象,web应用程序可以异步的读取存储在用户计算机上的文件(或者原始数据缓冲)内容,可以使用File对象或者Blob对象来指定所要处理的文件或数据.其中File对象可以是来自用户在一个<input type="text" />元素上选择文件后返回的FileList对象,也可以来自拖放操作生成的 DataTransfer对象,还可以是来自在一个HTMLCanvasElement上执行mozGetAsFile()方法后的返回结果.

页面中多个,上传多个图片DEMO代码

<!Doctype html>
<html>
 <head>
 <title>上传图片显示预览图</title>
 <style>
  #result img{
  height:100px;
  display:inline-block;
  margin-right:10px;
  margin-bottom:10px;
  }
 </style>
 </head>
 <body>
 <div class="add_imgs">
  <p> 
  <label>请选择一个图像文件:</label> 
  <input type="file" id="file_input" style="display:none;" /> 
  </p> 
  <div id="result">
  <a href="javascript:void(0);" class="add_img_btn">添加图片</a>
  </div> 
 </div>
 <div class="add_imgs">
  <p> 
  <label>请选择一个图像文件:</label> 
  <input type="file" id="file_input" style="display:none;" /> 
  </p> 
  <div id="result">
  <a href="javascript:void(0);" class="add_img_btn">添加图片</a>
  </div> 
 </div>
 <script src="jquery-2.2.1.min.js"></script>
 <script>
  $(".add_img_btn").unbind("click").on("click",function(){
  $(this).parents(".add_imgs").find("input[type=file]").click();
  var result = $(this).parent(); 
  var input = $(this).parents(".add_imgs").find("input[type=file]");
  dads(result,input);
  })
  
  
  function dads(result,input){
  if(typeof FileReader==='undefined'){ 
   result.innerHTML = "抱歉,你的浏览器不支持 FileReader"; 
   input.setAttribute('disabled','disabled'); 
  }else{ 
   $(input).unbind("change").on("change",function(){
   var file = this.files[0]; 
   if(!/image\/\w+/.test(file.type)){ 
    alert("文件必须为图片!"); 
    return false; 
   } 
   var reader = new FileReader(); 
   reader.readAsDataURL(file); 
   reader.onload = function(e){ 
    $(result).append('<img src="'+this.result+'" alt="" />'); 
   } 
   })
  } 
  }
 </script>
 </body>
</html>

以上就是本文的全部内容,希望对大家学习JavaScript程序设计有所帮助。

相关文章

  • JavaScript Rxjs mergeMap 的使用场合

    JavaScript Rxjs mergeMap 的使用场合

    这篇文章主要介绍了JavaScript Rxjs mergeMap 的使用场合,mergeMap 接收一个函数作为输入参数,这个函数的输入参数就是通过 pipe 链接 mergeMap 的 Observable 里包含的元素
    2022-07-07
  • Bootstrap布局之栅格系统详解

    Bootstrap布局之栅格系统详解

    这篇文章主要为大家详细介绍了Bootstrap布局之栅格系统,小编对Bootstrap栅格系统(布局)也很陌生,特分享整理这篇文章,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • 静态页面也可以实现预览 列表不同的显示方式

    静态页面也可以实现预览 列表不同的显示方式

    静态页面也可以实现预览 列表不同的显示方式...
    2006-10-10
  • JavaScript实现网页留言板功能

    JavaScript实现网页留言板功能

    这篇文章主要为大家详细介绍了JavaScript实现网页留言板功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • JS实现把一个页面层数据传递到另一个页面的两种方式

    JS实现把一个页面层数据传递到另一个页面的两种方式

    这篇文章主要介绍了JS实现把一个页面层数据传递到另一个页面的方式,本文给大家提供了两种方式,需要的朋友可以参考下
    2018-08-08
  • js实现导航栏上下动画效果

    js实现导航栏上下动画效果

    这篇文章主要为大家详细介绍了js实现导航栏上下动画效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • js表单验证实例讲解

    js表单验证实例讲解

    这篇文章主要为大家详细介绍了js表单验证,JavaScript 可用来在数据被送往服务器前对HTML 表单中的这些输入数据进行验证,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • js实现自定义路由

    js实现自定义路由

    本文介绍了js实现自定义路由,主要是事件hashchange的使用,然后根据我们的业务需求封装。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • webpack与SPA实践之管理CSS等资源的方法

    webpack与SPA实践之管理CSS等资源的方法

    本篇文章主要介绍了webpack与SPA实践之管理CSS等资源的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • JavaScript实现网页计算器

    JavaScript实现网页计算器

    这篇文章主要为大家详细介绍了JavaScript实现网页计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07

最新评论