Javascript的一次文本计时器

时间:2013-03-22 21:40:02

标签: javascript html5 timer

我对javascript中的计时器功能有疑问。 有没有办法创建一个简单的功能,我将在我的游戏中调用,例如只持续3秒。它只会被调用一次,但我不知道如何设置它恰好是x秒长。我的另一部分问题是如何延迟某些功能。 (例如:我希望在文本完成后调用Boss();(我希望在画布上使用更短的时间))

2 个答案:

答案 0 :(得分:3)

使用setTimeout()函数使系统等待特定的持续时间,例如。 setTimeout(afterThreeSecondsDoThis, 3000)。所以你可以做的是设置一个变量timer来跟踪超时,并提供一个你想在时间到时执行的功能。看看这个小提琴演示:http://jsfiddle.net/amyamy86/V4cPR/

var timer = null;
var WAIT_TIME = 3000; // 3 seconds

var afterThreeSecondsDoThis = function () {
    alert('3 seconds has passed!');

    clearTimeout(timer); // remove timer
};
var startTimer = function () {
    timer = setTimeout(afterThreeSecondsDoThis, WAIT_TIME);
};
var boss = function() {
      alert('Now enjoy the show!');  
};

startTimer();

var text = $('#text').animate({
    top: '-1200'
}, 40000, 'linear', function () {
    // text has finished animating
    boss();
});

您可以详细了解:

答案 1 :(得分:2)

我不明白第一部分。什么“持续例如只有3秒。”意思?

延迟:

setTimeout(function() {
    //do stuff
}, milliseconds)