JS таймер

vankich

Registered
Почнах да разучавам JS стабилно, както трябва от началото и хванах да си правя таймер. По-точно харесах си един код и го разучавам и модифицирам.
Таймера си работи, обаче има едно дразнещо проблемче. Когато секундите са по-малко от 10 ги показва като една цифра, без 0. Същото за минутите и часовете. Мъчих се да го оправя ама не успях. Правих проверка за дължината на стринга, ако е 1 да добавя 0 отпред, но тогава се прецаква брояча и тн.

Етото и кода:
Код:
<script>
	function plusOne() {
		var sec = document.getElementById('sec');
		var min = document.getElementById('min');
		var hour = document.getElementById('hour');
		
		sec.childNodes[0].nodeValue = (parseInt(sec.childNodes[0].nodeValue)+1);
		if (sec.childNodes[0].nodeValue == 60) {
			sec.childNodes[0].nodeValue = '00';
			min.childNodes[0].nodeValue = (parseInt(min.childNodes[0].nodeValue)+1);
		}
		if (min.childNodes[0].nodeValue == 60) {
			min.childNodes[0].nodeValue = '00';
			hour.childNodes[0].nodeValue = (parseInt(hour.childNodes[0].nodeValue)+1);
		}
	}
		var stop = setInterval("plusOne()",1000);
		window.onload = plusOne;
</script>

Код:
<span id="hour">00</span>:<span id="min">00</span>:<span id="sec">00</span>
 
Код:
if (sec < 10) {sec = "0"+sec;}
Това отказва да сработи. Аз го пробвах още преди да постна темата.
 
DireWolf каза:
А без + пробва ли, защото това е оператор за действие събиране....

Код:
if (sec < 10) {sec = "0"sec;}
В JS + се използва и като връзка (както . в php). Въпреки това пробвах и не работи. Таймера не тръгва.
 
Ето ти един скрипт който позлвам аз при негов сичко е добре от JS не разбирам но се надявам да ти помогне
Код:
<div id='bxx' class='z'></div>
<script type="text/javascript">
v=new Date();
var bxx=document.getElementById('bxx');
function t(){
n=new Date();
ss=432;
s=ss-Math.round((n.getTime()-v.getTime())/1000.);
m=0;
h=0;
if(s<0){
bxx.innerHTML='Finish';
}else{
if(s>59){m=Math.floor(s/60);s=s-m*60;}
if(m>59){h=Math.floor(m/60);m=m-h*60;}
if(s<10){s="0"+s}
if(m<10){m="0"+m}
bxx.innerHTML=h+':'+m+':'+s+'Runing';}
window.setTimeout("t();",999);
}
window.onload=t;

</script>
 

Back
Горе