JavaScript实现图片预览的多种方案

作者:小括号时间:2026-10-30 18:33:25浏览:93

本文介绍了在JavaScript中实现图片预览的两种常见方式。首先通过FileReader接口读取本地文件,将其转换为Base64编码字符串并赋值给img标签的src属性;其次探讨了利用Blob对象直接生成预览URL的方法。文章提供了完整的HTML与JS代码示例,帮助开发者快速掌握前端图片预览功能的实现细节。

JavaScript图片预览代码示例

以下是具体的代码实现示例,后续将对内容进行补充和完善:

核心实现逻辑


<!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>

总结与展望

上述内容涵盖了本文的核心知识点,希望能为读者的学习提供有价值的参考。如果您觉得内容有用,欢迎继续支持我们的网站。

作者最新文章