i have following code create stopwatch functionality. thing have create startandstop button startandpause. have been wracking brain ang internet trying find out how this. appreciated. thanks!
<script type="text/javascript"> <!-- stopwatch var stopwatch; var runningstate = 0; // 1 means timecounter running 0 means counter stopped var stoptime = 0; var lapcounter = 0; var currenttime; var lapdate = ''; function timecounter(starttime) { currentdate = new date(); stopwatch = document.getelementbyid('stopwatch'); var timediff = currentdate.gettime() - starttime; if(runningstate == 0) { timediff = timediff + stoptime } if(runningstate == 1) { stopwatch.value = formattedtime(timediff); refresh = settimeout('timecounter(' + starttime + ');',10); } else { window.cleartimeout(refresh); stoptime = timediff; } } function marklaph() { if(runningstate == 1) { if(lapdate != '') { var lapold = lapdate.split(':'); var lapnow = stopwatch.value.split(':'); var lapcount = new array(); var x = 0 for(x; x < lapold.length; x++) { lapcount[x] = new array(); lapcount[x][0] = lapold[x]*1; lapcount[x][1] = lapnow[x]*1; } if(lapcount[1][1] < lapcount[1][0]) { lapcount[1][1] += 60; lapcount[0][1] -= 1; } if(lapcount[2][1] < lapcount[2][0]) { lapcount[2][1] += 10; lapcount[1][1] -= 1; } } lapdate = stopwatch.value; hlapdetails.value += (++lapcounter) + '. ' + stopwatch.value + '\n'; } } function startandstop() { var startandstop = document.getelementbyid('startandstopbutton'); var startdate = new date(); var starttime = startdate.gettime(); if(runningstate==0) { startandstop.value = 'stop'; runningstate = 1; timecounter(starttime); } else { startandstop.value = 'start'; runningstate = 0; lapdate = ''; } } function resetstopwatch() { lapcounter = 0; stoptime = 0; lapdate = ''; window.cleartimeout(refresh); if(runningstate == 1) { var resetdate = new date(); var resettime = resetdate.gettime(); timecounter(resettime); } else { stopwatch.value = "0:0:0"; } } function formattedtime(unformattedtime) { var decisec = math.floor(unformattedtime/100) + ''; var second = math.floor(unformattedtime/1000); var minute = math.floor(unformattedtime/60000); decisec = decisec.charat(decisec.length - 1); second = second - 60 * minute + ''; return minute + ':' + second + ':' + decisec; } </script>
try code,
<!doctype html> <html> <head> </head> <body> <div id="show"></div> <input type="button" id="start" value="start" onclick="countup()" /> <input type="button" id="pause" value="pause" /> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script> <script type="text/javascript"> var h = 0; var m = 0; var s = 0; var ml = 0; document.getelementbyid("show").innerhtml = "0:0:0:0"; function countup() { ml++; if (ml > 99 ) { s++; ml = 0; } if (s >59) { s = 0; m++; } if (m >59) { m = 0; h++; } var t = h + ":" + m + ":" + s + ":" + ml; document.getelementbyid("show").innerhtml = t; } var timer; $("#pause").click(function () { clearinterval(timer); }); $("#start").click(function () { timer = setinterval(countup, 10) }); </script> </body> </html>
Comments
Post a Comment