IE 11, XMLHttpRequest, xhr.upload не задано в веб-приложении
Пытаясь закодировать библиотеку загрузки в JavaScrupt, у меня закончилась странная проблема в IE 11.
С XMLHttpRequest 2 вы можете загружать файлы и получать результаты. Однако, если вы пытаетесь сделать это в веб-приложении, вы не получите никакого прогресса от IE 11 (я пробовал только эту версию). Вы получите ошибку с тем же кодом.
Вот пример:
worker.js
self.addEventListener("message", function(e) {
var file = e.data;
var xhr = new XMLHttpRequest();
if (xhr.upload)
xhr.upload.onprogress = function(event){
// here we get the progression through event.loaded
};
xhr.open('POST', '/upload.php', true);
xhr.send(file);
});
main.js
var uploadworker = new Worker('worker.js');
uploadworker.postMessage( file );
Если вы используете этот код напрямую, он будет работать в любом браузере. Если вы используете его в веб-приложении, он не будет работать в IE11. Если факт, вы получите "Неверный аргумент" в строке: if (xhr.upload)
Потому что IE11, кажется, не имеет этого свойства, установленного, когда XMLHttpRequest используется в веб-редакторе.
У кого-нибудь есть идея, почему это происходит?
1 ответ
У кого-нибудь есть идея, почему это происходит?
Это потому, что это была ошибка, которая была исправлена за это время.