[英]javascript: get base64 of input field (type=file) in IE9
我需要上傳一張圖片,就像這樣
<form>
<input type="file">
</form>
但是,我想在上傳之前裁剪/調整文件大小。 裁剪和調整大小沒問題,但如何從輸入文件元素中獲取base64? 在IE10和其他瀏覽器中,我可以這樣:
if (this.files.length === 0) {
return;
}
var file = this.files[0];
if (file.type.match(/image.*/)) {
var reader = new FileReader();
reader.onload = function (event) {
cropAndResize(event.target.result);
};
reader.readAsDataURL(file);
}
但是,在IE9中, this.files是未定義的。 如何在IE9中訪問上傳圖像的base64(當然沒有到后端的往返!)? 這是一個jsfiddle
IE9不支持FileReader API,因此無法使用純JavaScript執行您想要的操作。 如果你想要IE9支持,那么你需要使用類似這個Flash解決方案的東西來實現相同的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.