comparison website/src/fschmidt/stopwatch.html @ 1292:a6892dcf5659

minor
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 03 Jan 2019 15:01:36 -0700
parents fb802d8aba0b
children 007ceb8dcf89
comparison
equal deleted inserted replaced
1291:2bbc6f132d61 1292:a6892dcf5659
20 20
21 function now() { 21 function now() {
22 return Math.floor(Date.now()/1000); 22 return Math.floor(Date.now()/1000);
23 } 23 }
24 24
25 function showTime() { 25 function show() {
26 var start = localStorage.start; 26 var start = localStorage.start;
27 var time; 27 var time;
28 if( !start ) { 28 if( !start ) {
29 time = 0; 29 time = 0;
30 } else { 30 } else {
38 var hours = time; 38 var hours = time;
39 seconds = ('0'+seconds).slice(-2); 39 seconds = ('0'+seconds).slice(-2);
40 minutes = ('0'+minutes).slice(-2); 40 minutes = ('0'+minutes).slice(-2);
41 time = hours + ':' + minutes + ':' + seconds; 41 time = hours + ':' + minutes + ':' + seconds;
42 document.querySelector('[time]').innerHTML = time; 42 document.querySelector('[time]').innerHTML = time;
43 }
44 43
45 function fixButtons() { 44 // fix buttons
46 var isRunning = localStorage.start && !localStorage.stop; 45 var isRunning = localStorage.start && !localStorage.stop;
47 if( isRunning ) { 46 if( isRunning ) {
48 document.querySelector('[start]').style.display = 'none'; 47 document.querySelector('[start]').style.display = 'none';
49 document.querySelector('[stop]').style.display = 'inline-block'; 48 document.querySelector('[stop]').style.display = 'inline-block';
50 document.querySelector('[reset]').style.display = 'none'; 49 document.querySelector('[reset]').style.display = 'none';
65 localStorage.start = now(); 64 localStorage.start = now();
66 } else { 65 } else {
67 localStorage.removeItem('stop'); 66 localStorage.removeItem('stop');
68 localStorage.start = now() - (stop - localStorage.start); 67 localStorage.start = now() - (stop - localStorage.start);
69 } 68 }
70 fixButtons(); 69 show();
71 } 70 }
72 71
73 function stop() { 72 function stop() {
74 localStorage.stop = now(); 73 localStorage.stop = now();
75 fixButtons(); 74 show();
76 } 75 }
77 76
78 function reset() { 77 function reset() {
79 localStorage.removeItem('start'); 78 localStorage.removeItem('start');
80 localStorage.removeItem('stop'); 79 localStorage.removeItem('stop');
81 showTime(); 80 show();
82 fixButtons();
83 } 81 }
84 82
85 function loaded() { 83 function loaded() {
86 showTime(); 84 show();
87 fixButtons(); 85 setInterval(show,1000);
88 setInterval(showTime,1000);
89 } 86 }
90 87
91 </script> 88 </script>
92 </head> 89 </head>
93 <body onload="loaded()"> 90 <body onload="loaded()">