收藏
回答

微信浏览器部分手机<input无法插入图片

https://www.cwhdsh.com/front/aboutUser/jump/?id=10951&url=/writeOpinion/ 12号后有用户反馈无法插入图片~机型是华为mate20 pro、华为荣耀V9,测试了一下,发现选择图片后回调为空。


微信浏览器

method="post" enctype="multipart/form-data" id="file_upload">
    

图片预览:


    
id="test-image-preview">

    


      type="file" id="test-image-file" name="test" accept="image/gif, image/jpeg, image/png, image/jpg">
    


 

id="test-file-info">




        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];
            //判断文件大小
            var size = file.size;
            if(size >= 1*1024*1024){
alert('文件大于1兆不行!');
                return false;
            }
// 获取File信息:
            info.innerHTML = '文件: ' + file.name + '
'
+
'大小: ' + file.size + '
'
+
'修改: ' + 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);
                console.log(file);
              }
})

用这个测试的时候。fileInput.value都是空的,显示“没有选择文件”



回答关注问题邀请回答
收藏
登录 后发表内容