有两种方法可以显示实际百分比。简要地...
一个-老同学本地JavaScript或jQuery的AJAX技术,在您需要服务器的支持,以及,一个不同的URL,可以给你更新。并且您每隔一段时间就会点击该网址。
HTML5 浏览器中的两个现代原生原生 JavaScript,支持XMLHTTPRequest2,也称为 AJAX 2,由新的 Web 和 HTML5 标准定义。
如果有两个,欢迎来到新网!!
浏览器中添加了多项增强连接性的功能 - HTML5 功能的一部分。
XMLHTTPRequest2启用 AJAX 中的事件,这些事件有助于从 JavaScript 本身监控进度以及许多其他事情。您可以通过监控实际进度来显示实际百分比:
var oReq = new XMLHttpRequest();
oReq.addEventListener("progress", updateProgress, false);
oReq.addEventListener("load", transferComplete, false);
oReq.addEventListener("error", transferFailed, false);
oReq.addEventListener("abort", transferCanceled, false);
oReq.open();
然后您可以定义上面附加的处理程序(在您的情况下为进度):
function updateProgress (oEvent) {
if (oEvent.lengthComputable) {
var percentComplete = oEvent.loaded / oEvent.total;
// ...
} else {
// Unable to compute progress information since the total size is unknown
}
}
jQuery 也可用于第二种情况。毕竟,jQuery 是为了帮助您用更少的代码,做更多的事情!
希望您专注于 HTML5 和新的 Web 解决方案,我会向您指出Mozilla DOC -在 AJAX 中监控进度,我从那里获得了这个解决方案。
现在每个浏览器都有一个 Web 文档(就像上面来自 Mozilla 的那个),此外,所有浏览器都与其他有影响力的 Web 和 Internet 巨头一起为一个名为Web Platform的共同事业做出贡献- 共同更新的 Web 文档。这是一项正在进行的工作,所以还没有完成。
此外,旧的 AJAX 中没有用于监控进度的本机功能。
以老式的方式,您必须创建一个间隔函数,该函数将继续点击单独的 URL 以获取进度更新。您的服务器还必须更新进度并将其作为来自不同端口的可用 URL 的响应发送。