上传文件,Firefox,Chrome工作,但不是IE

时间:2016-11-12 15:35:06

标签: jquery internet-explorer

我使用以下代码,允许用户浏览本地devive上的图像并选择上传。

该代码在Firefox 49.x和Chrome 49.x中完美运行,但在IE 9.x中则无法运行。

代码中有一个“addEventListener”作为其中的一部分,用于查看浏览器是否支持文件uplaod。

使用IE 9.x并尝试选择上传文件时,代码会发出错误“浏览器不支持文件上传”。错误按摩在下面的代码中,但是nayone知道为什么IE不起作用。

window.URL = window.URL || window.webkitURL;
var elBrowse = document.getElementById("browse"),
    elPreview = document.getElementById("preview2"),
    useBlob = false && window.URL; // `true` to use Blob instead of      Data-URL

function readImage(file) {
    var reader = new FileReader();
    reader.addEventListener("load", function() {
        var image = new Image();

        image.addEventListener("load", function() {
            if (image.height >= 390) {
                var imageInfo = '<br><br>Your selected file size is<br>  Display width ' +
                    image.width + ',px <br> Display height ' +
                    image.height + 'px ' + '';

                elPreview.appendChild(this);
                elPreview.insertAdjacentHTML("beforeend", imageInfo + '<br>');
                $("#resetfile").show();
            } else {
                $("#image_field").val('');
                $("#preview2").val('');
                alert(file.name + '\n\n Selected image is to small\n Display width ' + image.width + ',\n Display height ' + image.height + ' \n\n Please change the image size');
            }
        });
        image.src = useBlob ? window.URL.createObjectURL(file) : reader.result;
        if (useBlob) {
            window.URL.revokeObjectURL(file);
        }
    });
    reader.readAsDataURL(file);
}

elBrowse.addEventListener("change", function() {
    var files = this.files;
    var errors = "";
    if (!files) {
        errors += "File upload not supported by your browser.";
    }
    if (files && files[0]) {
        for (var i = 0; i < files.length; i++) {
            var file = files[i];
            if ((/\.(png|jpeg|jpg|gif)$/i).test(file.name)) {
                readImage(file);
            } else {
                errors += file.name + " Unsupported Image extension\n";
            }
        }
    }
    if (errors) {
        alert(errors);
    }
});

非常感谢你的时间。

0 个答案:

没有答案