2013-03-22 2 views
-1

У меня есть вопрос о функциях таймера в javascript. есть способ создать простую функцию, которую я буду вызывать во время моей игры, которая длится, например, всего 3 секунды. Он будет называться только один раз, но я не знаю, как установить его ровно в x-секунд. И моя другая часть этого вопроса заключается в том, как я могу отложить некоторые функции. (Например: я хочу позвонить Boss(); после того, как мой текст заканчивается (я хочу иметь его на холсте в течение более короткого периода времени))Одноразовый текстовый таймер для Javascript

+0

РТЛМ? https://developer.mozilla.org/en/docs/DOM/window.setTimeout –

+0

У вас нет ни одного вопросительного знака, ни любого кода. –

+0

@MarcB RTLM? Управление логистикой в ​​режиме реального времени? Вращающаяся матрица линии передачи? –

ответ

2

Вы можете использовать функцию 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(); 
}); 

Вы можете узнать больше о:

2

Я не понимаю первую часть. Что означает «последний, например, всего 3 секунды». имею в виду?

За задержку:

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

Это действительно полезно для 2-й части. Я хочу, чтобы я имел плавающий текст в середине моего холста в течение 3 секунд. и thats это ... – Toesmash

+0

@Toesmash Мы не задаем несколько вопросов в одном сообщении в SO, вот как вопросы остаются наиболее полезными для других –

Смежные вопросы