Próbuję pokazać pasek postępu przed przejściem z jednej strony na drugą w tej samej witrynie.XMLHttpRequest onprogress total jest zawsze 0 w Chrome
Moja funkcja wiąże funkcję updateProgress do XMLHttpRequest onProgress imprezy i przekierowuje użytkownika do nowej strony na (xhr.readyState == 4 & & xhr.status == 200) Wydaje się, że działa poprawnie z wyjątkiem Chrome pokazuje „całkowitej "jako zero, które nie pozwala na prawidłowe działanie paska postępu. Mój kod znajduje się poniżej.
Z góry dziękuję ...
$('.ajaxNavi').click(function (e) {
e.preventDefault();
var url = $(this).attr('href');
var xhr = new XMLHttpRequest();
xhr.onprogress = updateProgress;
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200)
// REDIRECT HERE
}
});
xhr.open("GET", url, true);
xhr.setRequestHeader("Content-Type", "text/html");
xhr.send();
});
function updateProgress(e) {
console.log(e.loaded + ' ' + e.total);
}
Czy problem dotyczy tylko Chrome? –
Myślę, że tak ... ponieważ mozilla pokazuje wartość e.total poprawnie. – B10
Właśnie sprawdziłem, IE wyświetla także wartość ... – B10