我遇到了一个适用于所有浏览器的简单任务 - 图像预览
我测试了FileREader& Form Data API非常有用。 我还使用了Ie8过滤器,它可以工作,但需要更改IE的默认设置。
已知的解决方案是:创建一个包含文件上传按钮的不可见iframe。一旦用户在父页面上上传图像,该事件就会在不可见的表单内克隆,并提交表单。在iframe的返回页面上,要显示图像 - 提取网址并将其附加到我的主预览图像div。我想避免这种复杂的替代方案..
还有其他方法可以使这项工作吗?
请注意我在这里测试的内容:
function ie8(imgFile) {
var newPreview = $(".article__image");
newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;
newPreview.style.width = "600px";
newPreview.style.height = "400px";
}
function nonie8(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
var blobURL = window.URL.createObjectURL(file);
reader.onload = function (e) {
$('.js-ugc-image').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}