我正在尝试编程一种游戏,在这种游戏中,你有4秒钟的时间(口头)回答一个问题,一旦回答完毕,就进入下一个问题。我需要它播放音频(不是我在这里要求的),然后从4秒倒计时到0,然后显示正确的答案并继续前进。
我如何创建一个从4秒到0秒的倒计时,然后再进入下一件事?
我尝试过以下操作,但都失败了。
var counter = 4;
$('#seconds').html(counter);
function decreaseSeconds(){
counter--;
$('#seconds').fadeOut('fast');
$('#seconds').html(counter).delay(800);
$('#seconds').fadeIn('fast');
}
while ( counter > 0){
decreaseSeconds()
}
参见演示
var nextFunction = function () {
alert('Hello.');
};
sec = 4;
interval = setInterval(function () {
sec--;
document.getElementById('sec').innerHTML = sec;
if (sec == 0) {
clearInterval(interval);
nextFunction();
}
}, 1000);
您应该使用setTimeout
yourfirstfunction ();
setTimeout (yoursecondfunction, counter*1000);
为什么不使用纯javascript中的setTimeout?http://www.w3schools.com/js/js_timing.asp
有些事情是这样的:http://jsfiddle.net/collabcoders/MD6sz/2/
$(document).ready(function () {
var secs = 4;
ticker = setInterval(function(){
$("#timer").html(secs + " seconds left");
if (secs == 0) {
//call some function when the clock hits 0
$("#timer").html("time is up");
clearInterval(ticker);
}
secs --;
}, 1000);
});