我有一个上传按钮,希望用户在点击“保存”之前能够预览图像。以下是我的HTML代码:
<input type="file" accept="image/*" id="avatarInput" onchange="PreviewImage();"/>
,以下是与此相关的JavaScript代码: function PreviewImage() {
var oFReader = new FileReader();
oFReader.readAsDataURL(document.getElementById("avatarInput").files[0]);
oFReader.onload = function (oFREvent) {
$('.image').attr('src', oFREvent.target.result);
};
};
现在,当我尝试在手机上上传肖像图片时,预览图片会旋转90度。我该怎么处理?我看到了this和this,但不知道代码能否用于我的情况。谢谢。
更新:
现在我有
function PreviewImage() {
var oFReader = new FileReader();
oFReader.onloadend = function () {
var showPicture = $('.mainavatar img');
var exif;
exif=EXIF.readFromBinaryFile(new BinaryFile(this.result));
console.log(exif);
$('.mainavatar img').attr('src', this.result);
};
oFReader.readAsBinaryString(document.getElementById("avatarInput").files[0]);
};
我已经包含了exif.js和binary.js,但是出现了错误Uncaught TypeError: First argument to DataView constructor must be an ArrayBuffer