很抱歉非常棒,但我开始学习JavaScript并遇到一些问题。
在下面的代码示例中,进度条在1秒内从0变为100,然而," time"变量设置为0毫秒,由setInterval使用。当我按下按钮时,我希望进度条立即达到100%。 (我将有不到一秒的时间完成,我想正确显示它们。)看起来setInterval没有使用给定的时间作为毫秒。
所以我的问题是,如何将setInterval设置为使用毫秒,因为它应该是? (我知道如果你第二次点击按钮会表现得很奇怪,但现在这没关系。)
谢谢!
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
</head>
<body>
<button id="theButton">click</button>
<progress id="progressbar" min="0" value="0" max="100"></progress>
<span class="progress-value">0%</span>
<script>
$('#theButton').click(function(){
var progressbar = $('#progressbar'),
max = progressbar.attr('max'),
time = 0,
value = progressbar.val();
var loading = function() {
value += 1;
addValue = progressbar.val(value);
$('.progress-value').html(value + '%');
if (value == max) {
clearInterval(animate);
}
};
var animate = setInterval(function() {
loading();
}, time);
});
</script>