更新XMLHTTPRequest.onreadystatechange中的HTML5进度条
将XMLHttpRequest中的两个HTML5进度条更新为:更新XMLHTTPRequest.onreadystatechange中的HTML5进度条,html,google-chrome,firefox,xmlhttprequest,progress-bar,Html,Google Chrome,Firefox,Xmlhttprequest,Progress Bar,将XMLHttpRequest中的两个HTML5进度条更新为: for (var i = 0; i < times.value; i++) { xhr.open("POST", uri, false); xhr.send(payload); restSendBar.value += 100 / times.value; console.log(i + "th times"); } 在Firefox中,执行for循环时会更新进度条。在Chrome中,在for
for (var i = 0; i < times.value; i++) {
xhr.open("POST", uri, false);
xhr.send(payload);
restSendBar.value += 100 / times.value;
console.log(i + "th times");
}
在Firefox中,执行for循环时会更新进度条。在Chrome中,在for循环完成后更新进度条
这是更新进度条的正确方法吗
这是Chrome中的一个bug吗
Arun可能是Chrome对方法调用的优先级不同于Firefox。尝试使用
setTimeout
更新进度条“带外”:
setTimeout(function() {
// Update progress bar here
restRxBar.value += 100 / times.value;
}, 0);
更多的相关代码将有所帮助。我将在何处设置此时间?您将用它替换
restXbar.value
调用。仍然没有更改,在for循环之后更新进度条。
setTimeout(function() {
// Update progress bar here
restRxBar.value += 100 / times.value;
}, 0);