欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用FileReader对象获取图片base64代码并预览

程序员文章站 2022-04-30 17:31:11
MDN中FileReader的详细介绍: https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader 用FileReader获取图片base64,并在页面预览: ......

MDN中FileReader的详细介绍:

FileReader获取图片base64,并在页面预览:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>

    <!-- 上传图片的input 绑定onchange事件-->
    <form action="">
        
        <input type="file" onchange="previewFile()" name="myfile" multiple="multiple"><br>
    </form>
    <!-- 预览的图片 -->
    <img src="" height="200" width="300" alt="Image preview..."/>
    <script type="text/javascript">
        
    function previewFile() {
        var preview = document.querySelector('img');
        // 选中file元素,并访问其files属性的第一个值
        var file  = document.querySelector('input[type=file]').files[0];
        //  console.log(document.querySelector('input[type=file]').files);
        //  console.log(document.querySelector('input[type=file]').files[0]);
        
        var reader = new FileReader();
        // 处理loadend事件,该事件在读取操作结束时(要么成功,要么失败)触发
        reader.onloadend = function () {
                console.log(reader.result)
                preview.src = reader.result;
        }
        // 读取指定的Blob中的内容,一旦完成,result属性中将包含一个data: URL格式的字符串以表示所读取文件的内容。
        reader.readAsDataURL(file);    
    }
    </script>
    
</body>
</html>