我对javascript中的计时器功能有疑问。有没有办法创建一个简单的函数,我会在我的游戏中调用它,例如只持续 3 秒。它只会被调用一次,但我不知道如何将它设置为恰好 x 秒长。我这个问题的另一部分是如何延迟某些功能。(例如:我想Boss();
在我的文字完成后打电话(我想把它放在画布上更短的时间))
问问题
3876 次
2 回答
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();
});
您可以了解更多关于:
于 2013-03-22T22:26:22.430 回答
2
我不明白第一部分。“例如仅持续 3 秒”是什么意思?意思是?
对于延迟:
setTimeout(function() {
//do stuff
}, milliseconds)
于 2013-03-22T21:41:56.430 回答