美文网首页
js上传图片实时预览

js上传图片实时预览

作者: simplerandom | 来源:发表于2020-06-16 19:05 被阅读0次
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <style>
        #test-image-preview {
            width: 1000px;
            height: 1000px;
        }
    </style>
    
    <body>
        <input type="file" value="选择" id="test-image-file">
        <div id="test-image-preview"></div>
        <div id="test-file-info"></div>
    </body>
    
    </html>
    <script>
        var fileInput = document.getElementById('test-image-file'),
            info = document.getElementById('test-file-info'),
            preview = document.getElementById('test-image-preview');
        // 监听change事件:
        fileInput.addEventListener('change', function () {
            // 清除背景图片:
            preview.style.backgroundImage = '';
            // 检查文件是否选择:
            if (!fileInput.value) {
                info.innerHTML = '没有选择文件';
                return;
            }
            // 获取File引用:
            var file = fileInput.files[0];
            // 获取File信息:
            info.innerHTML = '文件: ' + file.name + '<br>' +
                '大小: ' + file.size + '<br>' +
                '修改: ' + file.lastModifiedDate;
            if (file.type !== 'image/jpeg' && file.type !== 'image/png' && file.type !== 'image/gif') {
                alert('不是有效的图片文件!');
                return;
            }
            // 读取文件:
            var reader = new FileReader();
            reader.onload = function (e) {
                var
                    data = e.target.result; // 'data:image/jpeg;base64,/9j/4AAQSk...(base64编码)...'            
                preview.style.backgroundImage = 'url(' + data + ')';
            };
            // 以DataURL的形式读取文件:
            reader.readAsDataURL(file);
        });
        function success(text) {
            var textarea = document.getElementById('test-response-text');
            textarea.value = text;
        }
    
        function fail(code) {
            var textarea = document.getElementById('test-response-text');
            textarea.value = 'Error code: ' + code;
        }
        fail();
    </script>
    

    相关文章

      网友评论

          本文标题:js上传图片实时预览

          本文链接:https://www.haomeiwen.com/subject/oynrxktx.html