使用Javascript的FileReader对IE8(Javascript FileReader

2019-10-20 12:00发布

我有这个javascript函数,显示预览用户选择了一个图像之后。 我的问题是,它不工作的IE浏览器,我不明白为什么。

没有错误,但input.files为空。

JavaScript的

function showimagepreview(input, previewId) {
    if (input.files && input.files[0]) {
        var filerdr = new FileReader();
        filerdr.onload = function (e) {
            $('#' + previewId).attr('src', e.target.result);
        }
        filerdr.readAsDataURL(input.files[0]);
    }
}  

这是我的HTML代码

<div class="photo" id="photo-1">
    <input type="file" class="upload-file" name="Photos[1]" onchange="showimagepreview(this, 'photosPreview1')" />
    <img id="photosPreview1" class="PhotoPreview" />
</div>

Answer 1:

问题是, FileReader不与IE8兼容。

见这里为完成这一功能的浏览器支持的完整列表。



Answer 2:

正如先前解释IE 8不支持的FileReader API http://caniuse.com/#feat=filereader

但是你可以用填充工具! 莫邪可以解决你的问题。 https://github.com/moxiecode/moxie



Answer 3:

IE 8不支持FileReader

尝试使用Modernizr的 。 我想你可以把它与它的工作。



文章来源: Javascript FileReader on IE8