Il mio orologio non lo rende passato 8 secondi
Domanda
Quindi, io sto facendo un semplice orologio che solo conta tempo da una statica punto di partenza. Il problema è che quando il secondo marchio colpisce 8, reimposta a 0. Non riesco a capire perché. Aiuto!
Ecco l'orologio: http://jsfiddle.net/Ender/jMbem/
Ecco il codice per esso:
HTML:
<h1>Mark's Busted Computer Clock</h1>
<div id="time">
<span id="hour">146</span>:<span id="minute">45</span>:<span id="second">00</span>
</div>
JS:
$(function() {
setInterval(UpdateSecond, 1000);
});
function UpdateSecond() {
var num = parseInt($('#second').text());
num++;
if (num == 60) {
num = 0;
UpdateMinute();
}
if (num < 10) {
num = "0" + num;
}
$('#second').text(num);
}
function UpdateMinute() {
var num = parseInt($('#minute').text());
num++;
if (num == 60) {
num = 0;
UpdateHour();
}
if (num < 10) {
num = "0" + num;
}
$('#minute').text(num);
}
function UpdateHour() {
$('#hour').text(parseInt($('#hour').text()) + 1);
}
Soluzione
Il problema è che non sta passando una radice alla funzione parseInt. Prova:
var num = parseInt($('#minute').text(), 10);
Più informazioni su: http://www.w3schools.com/jsref/jsref_parseint.asp
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow