link
Niestety. Bardzo zależy mi na formacie HH:MM:SS. Znalazłem do tego formułkę:
function secondsToHms(d) { d = Number(d); var h = Math.floor(d / 3600); var m = Math.floor(d % 3600 / 60); var s = Math.floor(d % 3600 % 60); return ((h > 0 ? h + ":" : "") + (m > 0 ? (h > 0 && m < 10 ? "0" : "") + m + ":" : "0:") + (s < 10 ? "0" : "") + s); }
ale sam nie potrafię... próbowałem na wiele sposobów, ale za każdym razem dostawałem "w zamian" pusty input.
Proszę o pomoc i narazie
edit: Śmiało.. trzeba zmienić chyba 3 linijki
edit 2: Kurcze, czas mija, a bardzo zależy mi na tym skrypcie..
Nie wygląda na skomplikowany, ale w związku z tym, że nie siedzę w środowisku JS nie potrafię dodać formułki do skryptu.. Wkleiłem ją tylko. Zobaczcie sami, że to o co proszę, nie wymaga przelania litrów potu:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"> <meta http-equiv="content-language" content="pl"> </head> <body onLoad="window.setTimeout('getSecs()',1)"> <script> startday = new Date(); clockStart = startday.getTime(); function initStopwatch() { var myTime = new Date(); var timeNow = myTime.getTime(); var timeDiff = timeNow - clockStart; this.diffSecs = timeDiff/1000; return(this.diffSecs); } function getSecs() { var mySecs = initStopwatch(); var mySecs1 = ""+mySecs; mySecs1= mySecs1.substring(0,mySecs1.indexOf(".")); document.tijd.hiero.value=mySecs1 window.setTimeout('getSecs()',1000); if (mySecs1==60) {alert("60 sekund ...") } } function secondsToHms(d) //sekundy na hh:mm:ss { d = Number(d); var h = Math.floor(d / 3600); var m = Math.floor(d % 3600 / 60); var s = Math.floor(d % 3600 % 60); return ((h > 0 ? h + ":" : "") + (m > 0 ? (h > 0 && m < 10 ? "0" : "") + m + ":" : "0:") + (s < 10 ? "0" : "") + s); } </script> <form name="tijd"> <input size="8" name="hiero"> </form> </body> </html>
To cały kod, ani litery więcej