| カウントダウン |
| タイマーを使用したカウントダウン |
| カウントダウン | |
const btnStart = document.getElementById("start");
btnStart.addEventListener("click", () =>
{
start();
});
const btnReset = document.getElementById("reset");
btnReset.addEventListener("click", () =>
{
reset();
});
const countdown = document.getElementById("countdown");
let stop = 0;//[0]処理可能 [1]停止
let intervalId = null;
const timeInit = 600;
let state = 0;//[0]未実行 [1]実行中
function start()
{
if(stop == 1 || state == 1)return;
state = 1;
timer();
}
function reset()
{
stop = 1;
state = 0;
countdown.innerText = "";
countdownEn.innerText = "";
clearInterval(intervalId);
stop = 0;
}
function timer()
{
let time = timeInit;//残りの時間
intervalId = setInterval(() =>
{
// 止める条件
if (stop == 1 || time <= 0)
{
clearInterval(intervalId);
if (stop == 1)
{
displayTime(timeInit);
}
else
{
//タイムアップと表示
countdown.innerText = "Time is up";
}
stop = 0;
state = 0;
return;
}
time--;
if(time < 0) time=0;
displayTime(time);
}, 100);
}
function displayTime(time)
{
let quotient = 0;//商
let rest = 0;//剰余
quotient = Math.floor(time / 10);
rest = time % 10;
countdown.innerText = quotient + "." + rest;
}
| Countdown |
| Countdown using a timer |
| Countdown | |
const btnStart = document.getElementById("start");
btnStart.addEventListener("click", () =>
{
start();
});
const btnReset = document.getElementById("reset");
btnReset.addEventListener("click", () =>
{
reset();
});
const countdown = document.getElementById("countdown");
let stop = 0;//[0] Processing possible [1] Stop
let intervalId = null;
const timeInit = 600;
let state = 0;//0] Not running [1] Running
function start()
{
if(stop == 1 || state == 1)return;
state = 1;
timer();
}
function reset()
{
stop = 1;
state = 0;
countdown.innerText = "";
countdownEn.innerText = "";
clearInterval(intervalId);
stop = 0;
}
function timer()
{
let time = timeInit;//Remaining time
intervalId = setInterval(() =>
{
// Stop conditions
if (stop == 1 || time <= 0)
{
clearInterval(intervalId);
if (stop == 1)
{
displayTime(timeInit);
}
else
{
//display "Time up"
countdown.innerText = "Time is up";
state = 0;
}
stop = 0;
return;
}
time--;
if(time < 0) time=0;
displayTime(time);
}, 100);
}
function displayTime(time)
{
let quotient = 0;//quotient
let rest = 0;//surplus
quotient = Math.floor(time / 10);
rest = time % 10;
countdown.innerText = quotient + "." + rest;
}
| ホームページおよプリ等に掲載されている情報等については、いかなる保障もいたしません。 ホームページおよびアプリ等を通じて入手したいかなる情報も複製、販売、出版または使用させたり、 または公開したりすることはできません。 当方は、ホームペーよびアプリ利用したいかなる理由によっての障害等が発生しても、 その結果ホームページおよびアプリ等を利用された本人または他の第三者が被った損害について 一切の責任を負わないものとします。 |