Skip to content

Instantly share code, notes, and snippets.

@logonoff
Last active December 25, 2020 03:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save logonoff/5e86809b42f851faca6711251077577a to your computer and use it in GitHub Desktop.
Save logonoff/5e86809b42f851faca6711251077577a to your computer and use it in GitHub Desktop.
countdown timer to three months after next christmas
<!-- sorry. -->
<style>
body {
margin: 0;
padding: 0;
}
.container {
background: #222;
width: 100%;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
}
#timer {
color: #fff;
font-size: 4rem;
}
.label {
font-size: 2.5rem;
padding-left: 0.25rem;
}
</style>
<div class="container">
<p id="timer">
<span id="timer-days"></span>
<span id="timer-hours"></span>
<span id="timer-mins"></span>
<span id="timer-secs"></span>
</p>
</div>
<script>
function getTheYear() {
var d = new Date();
var y = d.getFullYear();
if (d.getMonth() == 11 && d.getDate() >= 25) { y += 1; }
return y + 1;
}
var timer = setInterval(function() {
let year = getTheYear();
let endDate = new Date("Mar 25, " + year + " 00:00:00").getTime();
let now = new Date().getTime();
let t = endDate - now;
let days = Math.floor(t / (1000 * 60 * 60 * 24));
let hours = Math.floor((t % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
let mins = Math.floor((t % (1000 * 60 * 60)) / (1000 * 60));
let secs = Math.floor((t % (1000 * 60)) / 1000);
if (days != 0 && days != 1) {
document.getElementById("timer-days").innerHTML = days +
"<span class='label'>DAYS</span>";
} else {
document.getElementById("timer-days").innerHTML = days +
"<span class='label'>DAY</span>";
}
if (("0"+hours).slice(-2) != 0 && ("0"+hours).slice(-2) != 1) {
document.getElementById("timer-hours").innerHTML = ("0"+hours).slice(-2) +
"<span class='label'>HRS</span>";
} else {
document.getElementById("timer-hours").innerHTML = ("0"+hours).slice(-2) +
"<span class='label'>HR</span>";
}
if (("0"+mins).slice(-2) != 0 && ("0"+mins).slice(-2) != 1) {
document.getElementById("timer-mins").innerHTML = ("0"+mins).slice(-2) +
"<span class='label'>MINS</span>";
} else {
document.getElementById("timer-mins").innerHTML = ("0"+mins).slice(-2) +
"<span class='label'>MIN</span>";
}
if (("0"+secs).slice(-2) != 0 && ("0"+secs).slice(-2) != 1) {
document.getElementById("timer-secs").innerHTML = ("0"+secs).slice(-2) +
"<span class='label'>SECS</span>";
} else {
document.getElementById("timer-secs").innerHTML = ("0"+secs).slice(-2) +
"<span class='label'>SEC</span>";
}
}, 5);
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment