zoukankan      html  css  js  c++  java
  • filereader 和 window.URL.createObjectURL

    <template>
      <div class="file-preview">
        <h4>前端图片预览之 filereader 和 window.URL.createObjectURL</h4>
        <div class="item">
          <p>1. filereader方式</p>
          <input type="file" name="imgFile" id="imgFile" @change="inputChange">
          <div class="pvWrap"></div>
        </div>
        <div class="item">
          <p>2. window.URL.createObjectURL</p>
          <input type="file" multiple name="imgFile2" id="imgFile2" @change="inputChange2">
          <div class="pvWrap2"></div>
        </div>
      </div>
    </template>
    <script>
    export default {
      name: "FilePreview",
      data() {
        return {};
      },
      methods: {
        inputChange(e) {
          let ele = document.getElementById("imgFile").files[0];
          let fr = new FileReader();
          fr.onload = function(ele) {
            var pvImg = new Image();
            pvImg.src = ele.target.result;
            pvImg.setAttribute("id", "previewImg");
            pvImg.style.width = "100%";
            pvImg.style.height = "100%";
            let pvWrap = document.querySelector(".pvWrap");
            pvWrap.innerHTML = "";
            pvWrap.appendChild(pvImg);
          };
          fr.readAsDataURL(ele);
        },
        inputChange2() {
          let ele = document.getElementById("imgFile2").files;
          let createObjectURL = function(blob) {
            return window[window.webkitURL ? "webkitURL" : "URL"]["createObjectURL"](blob);
          };
          for (let i = 0; i < ele.length; i++) {
            const element = ele[i];
            let newImgData = createObjectURL(element);
            let pvImg = new Image();
            pvImg.src = newImgData;
            pvImg.style.width = "100%";
            pvImg.style.height = "100%";
            let pvWrap2 = document.querySelector(".pvWrap2");
            pvWrap2.appendChild(pvImg);
          }
        }
      }
    };
    </script>
    <style scoped>
    .pvWrap,
    .pvWrap2 {
      width: 400px;
      height: 200px;
    }
    </style>
  • 相关阅读:
    数据库常用面试题
    Base64、Md5、Des加密
    C#反射类型的使用
    C# 反射工厂模式的实现
    生成验证码的例子
    轻松实现页面提交时,显示“提交中..” (转)
    编写高性能 Web 应用程序的 10 个技巧 (转)
    由Duwamish学习web.config的配置(转)
    .Net配置文件常用配置说明 (转)
    用asp.net还原与恢复sqlserver数据库(转)
  • 原文地址:https://www.cnblogs.com/samsara-yx/p/11058960.html
Copyright © 2011-2022 走看看