-3
我只是想詢問是否有任何方法可以暫停,如setInterval()
,因此可以執行另一個命令。我爲交通燈系統編碼,每個圖像都出現在屏幕上(這些是燈光),並保持不同的時間,這就是爲什麼我不能使用setInterval()
或setTimeout
,因爲它按順序播放。setInterval的替代品?
我只是想詢問是否有任何方法可以暫停,如setInterval()
,因此可以執行另一個命令。我爲交通燈系統編碼,每個圖像都出現在屏幕上(這些是燈光),並保持不同的時間,這就是爲什麼我不能使用setInterval()
或setTimeout
,因爲它按順序播放。setInterval的替代品?
您可以使用變量來控制間隔函數的行爲。
var enabled = true;
setInterval(function() {
if (!enabled) {
return;
}
// rest of code here
}, period);
然後一些其他的代碼可以設置enabled
到false
和間隔功能將有效地暫停。
只需使用帶'setTimeout'的遞歸方法即可。 – Bergi
您可以改用循環。多一點工作,但定時器只是幻想循環。 – floor
您不能暫停執行某個功能,也不能中止正在運行的功能。而且,你不能恢復給定的功能。你可以做的是創建一個應該按順序執行的函數數組,允許在每個函數之後執行其他任務。 –