코딩하는 문과생

자바스크립트/ 04. 타임어택 구현하기 본문

웹 프로그래밍/Javascript

자바스크립트/ 04. 타임어택 구현하기

코딩하는 문과생 2018. 11. 3. 23:56

타임어택 자바스크립트로 구현하기


-오픈소스와 책을 참고해서 타임어택하는 자바스크립트를 짜보았습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
날짜: <input type="text" id="year" size=5>년
<input type="text" id="month" size=5>월
<input type="text" id="day" size=5>일
시간: <input type="text" id="hour" size=5>시
<input type="text" id="minute" size=5>분까지 남은 시간:
<button type="button" onclick="getTime()">남은 시간 구하기</button>
 
<br />
 
종료시간: 
<span id=counter0></span>일
<span id=counter1></span>시간
<span id=counter2></span>분
<span id=counter3></span>초 남음
 
 
 
<script>
 
function getTime() {
  var year = parseInt(document.getElementById("year").value);
  var month = parseInt(document.getElementById("month").value);
  var day = parseInt(document.getElementById("day").value);
  var hour = parseInt(document.getElementById("hour").value);
  var minute = parseInt(document.getElementById("minute").value);
 
  now = new Date();
  dday = new Date();
  dday.setFullYear(year,month-1,day);
  dday.setHours(hour);
  dday.setMinutes(minute);
  dday.setSeconds(0);
 
  days = (dday - now) / 1000 / 60 / 60 / 24;
  daysRound = Math.floor(days);
  months =
  hours = (dday - now) / 1000 / 60 / 60 - (24 * daysRound);
  hoursRound = Math.floor(hours);
  minutes = (dday - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound);
  minutesRound = Math.floor(minutes);
  seconds = (dday - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);
  secondsRound = Math.round(seconds);
 
  document.getElementById("counter0").innerHTML = daysRound;
  document.getElementById("counter1").innerHTML = hoursRound;
  document.getElementById("counter2").innerHTML = minutesRound;
  document.getElementById("counter3").innerHTML = secondsRound;
  newtime = window.setTimeout("getTime();"1000);
}
</script>
 
cs


<실행결과>