Witam!
Stworzyłem timer, który odlicza czas pozostały do wakacji tego roku. Chcę go jednak rozwinąć w taki sposób aby po zakończeniu się wakacji, timer automatycznie się resetował i nastawiał na następny rok. Stworzyłem więc zmienną z datą rozpoczęcia roku szkolnego. Za pomocą if'a napisałem warunek, że jeśli dzisiejsza data będzie równa tamtej, zmienna deadline, w której zapisana jest data rozpoczęcia wakacji, doliczy sobie rok. Niestety nic nie działa.
Proszę o pomoc, w wymyśleniem innego sposobu, lub poprawienia mojego kodu.
KOD:
function countdown(){
//******************* Ważne! ******************
var now = new Date();
var deadline = new Date("Jun 22, 2018 00:00:00");
var dzien = now.getDate();
var mies = now.getMonth() + 1;
var rok = now.getFullYear();
var crash = new Date("Sep 01, "+ rok +" 00:00:00");
if(now === crash){
var nextHoliday = rok +1;
deadline.setFullYear(nextHoliday);
}
var distance = deadline - now;
//**************** Ważne! ***************
if( dzien < 10){
dzien = "0" + dzien;
}
if( mies < 10){
mies = "0" + mies;
}
document.getElementById("now").innerHTML = dzien + "." + mies + "." + rok;
var dDay = deadline.getDate();
var dMonth = deadline.getMonth() + 1;
var dYear = deadline.getFullYear();
if( dDay < 10){
dDay = "0" + dDay;
}
if( dMonth < 10){
dMonth = "0" + dMonth;
}
document.getElementById("end").innerHTML = dDay + "." + dMonth + "." + dYear;
var s = Math.floor( distance / 1000);
var m = Math.floor(s / 60);
var h = Math.floor(m / 60);
var d = Math.floor(h / 24);
var w = Math.floor(d / 7);
h %= 24;
m %= 60;
s %= 60;
if( d < 10){
d = "0" + d;
}
if( h < 10){
h = "0" + h;
}
if( m < 10)
{
m = "0" + m;
}
if( s < 10){
s = "0" + s;
}
// Display the result in the element with id="demo"
document.getElementById("timer").innerHTML = d + ": " + h + ": " + m + ": " + s;
document.getElementById("week").innerHTML = w + " - mondays left";
// If the count down is finished, write some text
if (distance < 0) {
document.getElementById("timer").innerHTML = "Goodby School!";
document.getElementById("week").innerHTML = "";
}
setTimeout(countdown, 1000);
};
countdown();