【发布时间】:2012-04-03 12:24:09
【问题描述】:
我正在从事一个需要从数据库下载内容的项目。该网站通常使用手机(高端智能手机)访问。
我想知道是否可以在使用 HTML5 下载内容的过程中添加进度条,以便在执行此操作时会出现一个贯穿整个屏幕的灯箱,并且只显示进度条。
【问题讨论】:
标签: html mobile progress-bar
我正在从事一个需要从数据库下载内容的项目。该网站通常使用手机(高端智能手机)访问。
我想知道是否可以在使用 HTML5 下载内容的过程中添加进度条,以便在执行此操作时会出现一个贯穿整个屏幕的灯箱,并且只显示进度条。
【问题讨论】:
标签: html mobile progress-bar
可以使用 XMLHttpRequest 的“新”进度事件
=> 更多信息:Mozilla site
=> 或:this thread
然而,新的 XMLHttpRequests(2) 是 not available in every (mobile)browser。
还有一个“新的”进度/仪表控件可供您使用... 但它isn't supported 尚未通过任何移动设备。因此,您将不得不使用像 this jquery plugin 这样的库,或者自己编写一个。
(更新:现在它也可用于 Android)
【讨论】:
您可以使用 w3.css 将 w3-progressbar 创建为:
<!DOCTYPE html>
<html>
<title>W3.CSS</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://www.w3schools.com/lib/w3.css">
<body class="w3-container">
<h2>Dynamic Progress Bar with Labels</h2>
<p>Centered label:</p>
<div class="w3-progress-container">
<div id="myBar" class="w3-progressbar w3-green" style="width:20%">
<div id="demo" class="w3-center w3-text-white">20%</div>
</div>
</div>
<br>
<button class="w3-btn w3-dark-grey" onclick="move()">Click Me</button>
<script>
function move() {
var elem = document.getElementById("myBar");
var width = 20;
var id = setInterval(frame, 10);
function frame() {
if (width >= 100) {
clearInterval(id);
} else {
width++;
elem.style.width = width + '%';
document.getElementById("demo").innerHTML = width * 1 + '%';
}
}
}
</script>
</body>
</html>
【讨论】: