Jx_6
2018-09-04 09:07:13
用javascript寫個倒計時,如何每隔一段時間彈出bootstrap模態框提示,show時倒計時暫停,關閉后繼續倒計時,類似alert功能。定時器內再判斷清楚重新啟用定時器會造成復用?。希望有大神來幫解答。非常感謝。
3 回答

聰明的湯姆
TA貢獻112條經驗 獲得超33個贊
代碼如下,打開瀏覽器調試面板,要關閉的時候,需要自己在console面板輸入關閉代碼closeDialog()
let count = 1000; // 倒計時總數
let interval1 = null; // 倒計時定時器
let interval2 = null; // 每隔一段時間就執行的定時器
let timeout = 3000; // 相隔時間
// 顯示模態框
function showDialog() {
clearInterval(interval1);
clearInterval(interval2);
}
// 關閉模態框
function closeDialog() {
startInterval();
startTimeout();
}
// 開始倒數
function startInterval() {
interval1 = setInterval(() => {
count--;
console.log(count);
}, 1000)
}
// 每隔一段時間執行的函數
function startTimeout() {
interval2 = setInterval(() => {
showDialog();
}, timeout)
}
// 進來先執行開始倒數函數
startInterval();
startTimeout()
添加回答
舉報
0/150
提交
取消