使用IE / Safari将图像上载为数据URI

时间:2012-08-06 18:38:57

标签: jquery filereader data-uri

目前我有一个使用jQuery和FileReader的拖放式解决方案,可与Chrome和Firefox配合使用。我使用readAsDataURL获取要上载的图像的数据URI,然后将数据POST到PHP,以便作为文件写入服务器。

我严重压缩了我的代码,但过程如下:

this.bind('drop', function(evt) {
    evt.preventDefault();
    evt.stopPropagation();

    var files = evt.originalEvent.dataTransfer.files;
    var file = files[0];
    var reader = new FileReader();

    reader.readAsDataURL(file);
});

然后我有一个单独的函数调用$.ajax POST数据URI。 我还检查了可以支持FileReader的浏览器:

$.fn.initUpload = function() {
    return (window.FileReader) ? this.initDnD() : this.addClass('disabled');
}

其中initDnD()有上一个例子。

对于.disabled课程,我会回到Safari {IE的<input type="file" />。我有什么方法可以获取用户选择的文件并立即将其转换为Safari / IE上的数据URI吗?我只是问这个,因为我宁愿重用我的PHP脚本来保存数据URI作为图像。

0 个答案:

没有答案