FileReader.readAsDataURL()
Метод readAsDataURL
используется для чтения содержимого указанного Blob
или File
.Когда операция закончится, readyState
(en-US) примет значение DONE
, и будет вызвано событие loadend (en-US)
. В то же время, атрибут result
(en-US) будет содержать данные как URL, представляющий файл, кодированый в base64
строку.
Синтаксис
instanceOfFileReader.readAsDataURL(blob);
Параметры
Пример
HTML
html
<input type="file" onchange="previewFile()" /><br />
<img src="" height="200" alt="Image preview..." />
JavaScript
js
function previewFile() {
var preview = document.querySelector("img");
var file = document.querySelector("input[type=file]").files[0];
var reader = new FileReader();
reader.onloadend = function () {
preview.src = reader.result;
};
if (file) {
reader.readAsDataURL(file);
} else {
preview.src = "";
}
}
Результат
Примечание: FileReader()
конструктор не поддерживается Internet Explorer до 10 версии. Для полностью совместимого решения прочтите crossbrowser possible solution for image preview. Смотрите также this more powerful example.
Спецификации
Specification |
---|
File API # readAsDataURL |
Совместимость с браузерами
BCD tables only load in the browser