全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

基于JavaScript实现本地图片预览

本文实例为大家分享了js本地图片预览的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<!--
<!DOCTYPE html>一定要放在第一行,除非上面都是空行

在HTML规范中,单独存在的标签是不需要使用/来自我关闭的,比如<br>,<input>,<hr>等等这样的标签都是符合语法的.
在XHTML规范中,单独存在的标签要按照XML的语法规则进行自我关闭,上面三个标签就应写成<br />,<input />,<hr />
-->
<html>
  <head>
    <meta charset="utf8">
    <style>
      input[type=radio] {
        /* 按钮与文字对齐 */
        vertical-align:middle;
      }
      input[type=file] {
        display: block;
      }
      #img {
        width: 200px;
        height: 200px;
        border: 1px solid black;
        margin-top: 10px;
      }
    </style>
  </head>
  <body>
    <input type="radio" name="previewType" value="fileReader" onChange="onPreviewTypeChange()">fileReader
    <input type="radio" name="previewType" value="createURL" onChange="onPreviewTypeChange()">createURL
    <hr>
    <input type="file" id="imgFile" onChange="imgChange()" value="test.jpg">
    <img id="img">
    <script>
      var previewTypes = document.getElementsByName("previewType");
      var imgFile = document.getElementById("imgFile");
      var img = document.getElementById("img");

      function getPreviewType() {
        for(var i=0; i<previewTypes.length; i++) {
          if(previewTypes[i].checked) {
            return previewTypes[i].value;
          }
        }
      }

      function onPreviewTypeChange() {
        imgChange(event.target.value);
      }

      function imgChange(type) {
        img.src = "";
        var files = imgFile.files;
        console.log(files);
        if(!files || files.length === 0) {
          return;
        }
        var file = files[0];
        if(!type) {
          type = getPreviewType();
          if(!type) {
            return;
          }
        }
        switch(type) {
          case "fileReader":
            var fr = new FileReader();
            fr.onload = function(progressEvent) {
              console.log(progressEvent);
              img.src = progressEvent.target.result;
            }
            fr.readAsDataURL(file);
            break;
          case "createURL":
            img.onload = function() {
              //释放一个之前通过调用 URL.createObjectURL() 创建的已经存在的 URL 对象。
              URL.revokeObjectURL(img.src);
            }
            img.src = URL.createObjectURL(file);
            break;
        }
      }
    </script>
  </body>
</html>


fileReader.readAsDataURL

URL.createObjectURL

可以看出URL实质上是以“blob:”打头的,后面跟着32位的UUID(8-4-4-4-12)的结构。

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


# js本地图片预览  # js图片预览  # javascript本地图片预览  # JS预览图像将本地图片显示到浏览器上  # Javascript图片上传前的本地预览实例  # javascript IE7 浏览器本地图片预览  # 在页面预览客户端本地图片的js代码(兼容FF IE)  # 纯JS实现本地图片预览的方法  # javascript firefox不显示本地预览图片问题的解决方法  # JS中利用FileReader实现上传图片前本地预览功能  # JavaScript实现图片本地预览功能【不用上传至服务器】  # 原生js FileReader对象实现图片上传本地预览效果  # JavaScript实现预览本地上传图片功能完整示例  # js实现的在本地预览图片功能示例  # 都是  # 放在  # 不需要  # 可以看出  # 大家分享  # 具体内容  # 实质上  # 大家多多  # 进行自我  # vertical  # radio  # align  # file  # middle  # charset  # meta  # type  # style  # border  # height 


相关文章: 网页设计与网站制作内容,怎样注册网站?  建站之星下载版如何获取与安装?  如何选择高效可靠的多用户建站源码资源?  建站之星安装后界面空白如何解决?  焦点电影公司作品,电影焦点结局是什么?  建站VPS配置与SEO优化指南:关键词排名提升策略  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  内部网站制作流程,如何建立公司内部网站?  定制建站方案优化指南:企业官网开发与建站费用解析  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  如何用5美元大硬盘VPS安全高效搭建个人网站?  北京的网站制作公司有哪些,哪个视频网站最好?  上海网站制作开发公司,上海买房比较好的网站有哪些?  建站之星如何开启自定义404页面避免用户流失?  建站之星伪静态规则如何正确配置?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  黑客如何利用漏洞与弱口令入侵网站服务器?  黑客如何通过漏洞一步步攻陷网站服务器?  网站制作服务平台,有什么网站可以发布本地服务信息?  C#怎么使用委托和事件 C# delegate与event编程方法  如何零基础开发自助建站系统?完整教程解析  建站主机选哪种环境更利于SEO优化?  c# 服务器GC和工作站GC的区别和设置  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  音乐网站服务器如何优化API响应速度?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何制作一个表白网站视频,关于勇敢表白的小标题?  ,柠檬视频怎样兑换vip?  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  怎么将XML数据可视化 D3.js加载XML  免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?  招贴海报怎么做,什么是海报招贴?  制作公司内部网站有哪些,内网如何建网站?  网站专业制作公司有哪些,做一个公司网站要多少钱?  建站之星导航配置指南:自助建站与SEO优化全解析  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  如何在建站之星网店版论坛获取技术支持?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  如何选择高效稳定的ISP建站解决方案?  小建面朝正北,A点实际方位是否存在偏差?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  太平洋网站制作公司,网络用语太平洋是什么意思?  宝塔面板如何快速创建新站点?  如何用PHP工具快速搭建高效网站?  高端网站建设与定制开发一站式解决方案 中企动力  如何快速生成高效建站系统源代码?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  海南网站制作公司有哪些,海口网是哪家的?  制作宣传网站的软件,小红书可以宣传网站吗?  整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。