<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='UTF-8'>
<title>javascript</title>
<script type='text/javascript'>
Number.prototype.finish = function(fmt) {
var n = this;
fmt = fmt.split(/[-:]/);
switch(fmt[0]) {
case "ru":
n += 79;
n %= 100;
n = n > 83 || n % 10 > 3 ? 2 : n % 10 ? 4 : 3;
return "" + this + fmt[1] + fmt[n];
}
return "" + this;
}
var izm;
var timeg;
var t;
function timer(form) {
var ans = form.ans.value;
var time = form.time.value;
timeg = time;
var fail = true;
if(ans == "sec")
t = time * 1000;
else
if(ans == "min")
t = time * 60000;
else
if(ans == "hou")
t = time * 3600000;
else {
alert("вы не указали единицы измерения");
fail = false;
}
if(fail != false) {
setTimeout(outtimer, t);
setTimeout(calk, 0);
timeg = t / 1000;
}
}
function calk() {
if(timeg >= 0) {
var r = Math.floor(timeg / 3600);
var e = Math.floor(timeg / 60 % 60);
var z = (timeg - r * 3600 - e * 60);
var s = [];
if(r > 0)
s.push(r.finish("ru: час-ов--а"));
if(e > 0)
s.push(e.finish("ru: минут--а-ы"));
if(z > 0)
s.push(z.finish("ru: секунд--а-ы"));
document.getElementById("actt").innerHTML = "осталось " + s.join(" и ");
}
timeg --;
if(timeg < 0)
document.getElementById("actt").innerHTML = ("Таймер закончил свое действие");
setTimeout(calk, 1000);
}
function outtimer() {
alert("время закончилось");
}
</script>
</head>
<body>
<form action='' id=form>
<hr>
<label for=time>Время</label>
<input type=text placeholder='Введите время для таймера' name=time id=time />
<br>
<hr>
<p>В каких еденицах измерения вы написали время?</p>
<label for=sec>Секунды</label>
<input type=radio name=ans id=sec value='sec' />
<label for=min>Минуты</label>
<input type=radio name=ans id=min value='min' />
<label for=hou>Часы</label>
<input type=radio name=ans id=hou value='hou' />
<br>
<hr>
<input type=button onclick='timer(getElementById("form"))' value='Активировать таймер' />
<hr>
<span id=actt>Вы не активировали таймер</span>
<hr>
</form>
</body>
</html>