자바스크립트로 타이머 만들기
12014 단어 timerhtmljavascript
JavaScript와 HTML만 사용하여 간단한 타이머를 만들어 보겠습니다.
암호
먼저 인터페이스를 만들고 HTML만 사용하여 간단한 작업을 수행합니다.
<form name="form_main">
<div>
<span id="hour">00</span>:<span id="minute">00</span>:<span id="second">00</span>:<span id="millisecond">000</span>
</div>
<br />
<button type="button" name="start">start</button>
<button type="button" name="pause">pause</button>
<button type="button" name="reset">reset</button>
</form>
HTML 구조에서 시간 정보를 표시하기 위해 일부
span
가 생성되었으며 그 후에 타이머의 기능을 제어하는 3개의 버튼이 있습니다.이제 JavaScript 부분을 시작하겠습니다.
"use strict";
let hour = 0;
let minute = 0;
let second = 0;
let millisecond = 0;
let cron;
document.form_main.start.onclick = () => start();
document.form_main.pause.onclick = () => pause();
document.form_main.reset.onclick = () => reset();
이 JavaScript 코드에서 제어 변수를 정의하고 기능을 해당 버튼과 연결합니다.
이제 함수를 생성해 보겠습니다.
function start() {
pause();
cron = setInterval(() => { timer(); }, 10);
}
function pause() {
clearInterval(cron);
}
function reset() {
hour = 0;
minute = 0;
second = 0;
millisecond = 0;
document.getElementById('hour').innerText = '00';
document.getElementById('minute').innerText = '00';
document.getElementById('second').innerText = '00';
document.getElementById('millisecond').innerText = '000';
}
여기에
start
, pause
및 reset
함수가 있으며 start
함수에서는 10밀리초마다 setInterval
를 시작합니다(브라우저에 따라 1밀리초마다 잠기기 때문).pause
함수에서 setInterval
를 지우고 start
함수에서 백그라운드에서 여러 작업이 없도록 시작하기 전에 지워야하므로 절차를 시작하기 전에 pause
함수 라고 합니다.reset
함수에서 보조 변수를 재설정하고 화면의 텍스트가 화면의 0(zero)
로 돌아가도록 innerText
를 사용하여 수동으로 설정합니다.function timer() {
if ((millisecond += 10) == 1000) {
millisecond = 0;
second++;
}
if (second == 60) {
second = 0;
minute++;
}
if (minute == 60) {
minute = 0;
hour++;
}
document.getElementById('hour').innerText = returnData(hour);
document.getElementById('minute').innerText = returnData(minute);
document.getElementById('second').innerText = returnData(second);
document.getElementById('millisecond').innerText = returnData(millisecond);
}
function returnData(input) {
return input > 10 ? input : `0${input}`
}
여기에
timer
함수에서 호출되는 마지막 부분인 start
함수가 있습니다. 이 함수에서 경과 시간을 확인합니다.millisecond
가 1000과 같으면 1초가 지난 다음 밀리초를 재설정하고 1초씩 늘립니다. second
가 60과 같으면 1분이 지난 다음 초를 1분으로 재설정합니다. minute
가 60이면 1시간이 지난 다음 분을 재설정하고 1시간 늘립니다. 마지막으로
innerText
를 사용하여 화면에 인쇄합니다.returnData
함수는 화면에서 텍스트를 보다 동적으로 만드는 데만 사용되며, 숫자가 10보다 작으면 앞에 0(zero)
를 연결하여 다음 논리를 만듭니다.그렇게 간단하게 준비했습니다.
데모
아래에서 작업하는 전체 프로젝트를 참조하세요.
유튜브
시청을 선호하는 경우 youtube(PT-BR의 비디오)에서 개발 내용을 확인합니다.
읽어 주셔서 감사합니다!
질문, 불만 사항 또는 팁이 있는 경우 여기에 의견을 남길 수 있습니다. 기꺼이 답변해 드리겠습니다!
😊😊 또 만나요! 😊😊
Reference
이 문제에 관하여(자바스크립트로 타이머 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/walternascimentobarroso/creating-a-timer-with-javascript-8b7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)