Line 1: |
Line 1: |
| __NOTOC__ | | __NOTOC__ |
| | | |
− | <h1>Countdown Clock</h1>
| + | function getTimeRemaining(endtime) { |
− | <div id="clockdiv">
| + | var t = Date.parse(endtime) - Date.parse(new Date()); |
− | <div> | + | var seconds = Math.floor((t / 1000) % 60); |
− | <span class="days"></span>
| + | var minutes = Math.floor((t / 1000 / 60) % 60); |
− | <div class="smalltext">Days</div>
| + | var hours = Math.floor((t / (1000 * 60 * 60)) % 24); |
− | </div> | + | var days = Math.floor(t / (1000 * 60 * 60 * 24)); |
− | <div> | + | return { |
− | <span class="hours"></span> | + | 'total': t, |
− | <div class="smalltext">Hours</div>
| + | 'days': days, |
− | </div> | + | 'hours': hours, |
− | <div> | + | 'minutes': minutes, |
− | <span class="minutes"></span> | + | 'seconds': seconds |
− | <div class="smalltext">Minutes</div> | + | }; |
− | </div>
| + | } |
− | <div>
| + | |
− | <span class="seconds"></span> | + | function initializeClock(id, endtime) { |
− | <div class="smalltext">Seconds</div> | + | var clock = document.getElementById(id); |
− | </div> | + | var daysSpan = clock.querySelector('.days'); |
− | </div>
| + | var hoursSpan = clock.querySelector('.hours'); |
| + | var minutesSpan = clock.querySelector('.minutes'); |
| + | var secondsSpan = clock.querySelector('.seconds'); |
| + | |
| + | function updateClock() { |
| + | var t = getTimeRemaining(endtime); |
| + | |
| + | daysSpan.innerHTML = t.days; |
| + | hoursSpan.innerHTML = ('0' + t.hours).slice(-2); |
| + | minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); |
| + | secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); |
| + | |
| + | if (t.total <= 0) { |
| + | clearInterval(timeinterval); |
| + | } |
| + | } |
| + | |
| + | updateClock(); |
| + | var timeinterval = setInterval(updateClock, 1000); |
| + | } |
| + | |
| + | var deadline = new Date(Date.parse(new Date()) + 15 * 24 * 60 * 60 * 1000); |
| + | initializeClock('clockdiv', deadline); |
| | | |
| | | |