addded loading progress

This commit is contained in:
2018-06-09 17:26:10 +02:00
parent c345912ab8
commit 25f1c1a497
6 changed files with 109 additions and 11 deletions
+23
View File
@@ -74,10 +74,15 @@ module.exports = {
'sc' :{full:'Scolie', dim:'Scol.'},
}
],
// loading progress
loaded_by_file:{},
// totalloaded:0,
loader: document.getElementById('db-loaded'),
load(callback) {
// load all dbs, when all loaded call main app callback function
for (var i = 0; i < this.langs.length; i++) {
this.loaded_by_file[this.langs[i].lc] = 0;
this.loadJSON(this.langs[i].lc, '/assets/jsondb/'+this.langs[i].db, callback)
}
},
@@ -87,6 +92,24 @@ module.exports = {
xobj.overrideMimeType("application/json");
// TODO: load and unzip gziped json
// xobj.setRequestHeader('Accept-Encoding', 'gzip');
// Display loading progress
xobj.addEventListener("progress", function(oEvent){
if (oEvent.lengthComputable) {
var percentComplete = oEvent.loaded / oEvent.total * 100;
console.log(lc+' loaded :',percentComplete);
this.loaded_by_file[lc] = percentComplete;
var totalloaded = 0;
for (var i = 0; i < this.langs.length; i++) {
totalloaded += this.loaded_by_file[this.langs[i].lc];
}
this.loader.style.width = (totalloaded/this.langs.length)+"%";
} else {
// Unable to compute progress information since the total size is unknown
console.log('no progress');
}
}.bind(this));
xobj.onreadystatechange = function () {
// console.log('onreadystatechange', xobj.readyState);
switch(xobj.readyState){