Здравствуйте.
Есть код таймера CountDowndmn:
var montharray = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
//var charset = document.charset || document.characterSet;
var eventstr = "";
var upstr = "осталось ";
function CountDowndmn(h, a, s, d, m, b, id) {
countdownid = document.getElementById(id);
cdyear = b;
cdmonth = m;
cdday = d;
cdhour = h;
cdminute = a;
cdsecond = s;
var c = new Date();
var e = c.getYear();
if (e < 1000) e += 1900;
var f = c.getMonth();
var g = c.getDate();
var i = c.getHours();
var j = c.getMinutes();
var k = c.getSeconds();
var l = montharray[f] + " " + g + ", " + e + " " + i + ":" + j + ":" + k;
futurestring = montharray[m - 1] + " " + d + ", " + b + " " + h + ":" + a + ":" + s;
dd = Date.parse(futurestring) - Date.parse(l);
dday = Math.floor(dd / (60 * 60 * 1000 * 24) * 1);
dhour = Math.floor((dd % (60 * 60 * 1000 * 24)) / (60 * 60 * 1000) * 1);
dmin = Math.floor(((dd % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) / (60 * 1000) * 1);
dsec = Math.floor((((dd % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) % (60 * 1000)) / 1000 * 1);
if (dday <= 0 && dhour <= 0 && dmin <= 0 && dsec <= 1) {
countdownid.innerHTML = eventstr;
return
} else {
var n = "" + dsec;
var o = n.substring(n.length - 2, n.length - 1);
n = n.substring(n.length - 1, n.length);
var p = "секунд";
if (n == "1" && !(o == "1")) {
p = "секунда"
}
if (((n == "2") || (n == "3") || (n == "4")) && !(o == "1")) {
p = "секунды"
}
n = "" + dmin;
o = n.substring(n.length - 2, n.length - 1);
n = n.substring(n.length - 1, n.length);
var q = "минут";
if (n == "1" && !(o == "1")) {
q = "минута"
}
if (((n == "2") || (n == "3") || (n == "4")) && !(o == "1")) {
q = "минуты"
}
n = "" + dhour;
o = n.substring(n.length - 2, n.length - 1);
n = n.substring(n.length - 1, n.length);
var r = "часов";
if (n == "1" && !(o == "1")) {
r = "час"
}
if (((n == "2") || (n == "3") || (n == "4")) && !(o == "1")) {
r = "часа"
}
n = "" + dday;
o = n.substring(n.length - 2, n.length - 1);
n = n.substring(n.length - 1, n.length);
var t = "дней";
if (n == "1" && !(o == "1")) {
t = "день"
}
if (((n == "2") || (n == "3") || (n == "4")) && !(o == "1")) {
t = "дня"
}
var u = "";
countdownid.innerHTML = "";
countdownid.innerHTML += upstr + " ";
if (dday > 0) countdownid.innerHTML += dday + " " + t + " ";
if (dhour > 0) countdownid.innerHTML += dhour + " " + r + " ";
if (dmin > 0) countdownid.innerHTML += dmin + " " + q + " ";
if (dsec > 0) countdownid.innerHTML += dsec + " " + p + " ";
if (u > 0) countdownid.innerHTML += u;
}
setTimeout(function(){CountDowndmn(cdhour,cdminute,cdsecond,cdday,cdmonth,cdyear,id)}, 1000);
}
Вызов:
<script src="countdownOrder2.js"></script>
<div align="center" id="countdown1"></div>
<div align="center" id="countdown2"></div>
<script type="text/javascript">
CountDowndmn(17,00,00,24,12,2015,"countdown1");
CountDowndmn(17,00,00,26,12,2015,"countdown2");
</script>
На странице появляется:
осталось 32 минуты 54 секунды
осталось 2 дня 32 минуты 54 секунды
Через секунду:
осталось 2 дня 32 минуты 53 секунд
осталось 2 дня 32 минуты 53 секунд
Не могу разобраться как исправить. Помогите пожалуйста!