上传前显示所选图像

时间:2012-03-12 06:44:17

标签: javascript html5 jquery file-upload

在我的一个Web应用程序中,我必须实现图像上传。但我需要在浏览器上传之前显示图像。我发现以下javascript代码并且在除Safari,IE之外的所有浏览器中都很好用。

function handleFiles(files) {

for (var i = 0; i < files.length; i++) {
    var file = files[i];

    var imageType = /image.*/;

    if (!file.type.match(imageType)) {


        $('.img_error_con').html("Invalid image file.");
            $('.img_error_con').fadeIn(200);
            return false;


        continue;
    }


    var img=document.getElementById('fake_img');
    img.src = file;
    img.onload = function() {


    };


    var reader = new FileReader();
    reader.onload = (function(aImg) {
        return function(e) {
            aImg.src = e.target.result;
        };
    })(img);
    reader.readAsDataURL(file);
}

}

请帮我解决Safari中的问题。或任何HTML5方法来完成这项工作?

请帮忙 提前致谢

1 个答案:

答案 0 :(得分:2)

欢迎使用HTML5不支持的各种功能......

Safari目前至少暂时不支持Windows上的FileReader,因此您的脚本无法使用javascript。我猜IE(哪个版本?)也没有。