Im в настоящее время пишет яваскрипта при загрузке библиотеки, которые я хочу использовать через несколько веб-сайтов, у меня есть мой собственный объект Data
, которые содержат файлы, метаданные и т.д.События вызываются из Java-библиотеки
Data
имеет функцию под названием .send()
, который загружает FormData
с XMLHttpRequest
Моя цель - создать индикатор выполнения с EventListener
по телефону 'progress'
. Но я не знаю, какой подход правильный, потому что я не знаю, как место для бара прогресса будет называться в HTML на каждой странице. И я еще не хочу иметь HTML-код, только что-то, что позволит мне настроить его.
Как я должен справиться с этой ситуацией?
Мой текущий код:
Data.prototype.send = function() {
'use strict';
var formData = new FormData();
formData.append('file', this.file, this.name);
if (this.property !== undefined) {
formData.append('property', this.property);
}
var request = new XMLHttpRequest();
request.upload.addEventListener('progress', function(e) {
var pc = parseInt(100 - (e.loaded/e.total * 100));
//What to do here?
}, false);
request.onreadystatechange = function(e) {
if (xhr.readyState == 4) {
//What to do here?
}
};
request.open('POST', upload.php, true);
request.send(formData);
};
Я решил это с чем-то похожим на это: https://jsfiddle.net/lol2x/r82jevbt/ спасибо за эту идею обратного вызова :) – lol2x