File tree Expand file tree Collapse file tree 2 files changed +41
-1
lines changed Expand file tree Collapse file tree 2 files changed +41
-1
lines changed Original file line number Diff line number Diff line change
1
+
2
+ 倒數計時
3
+ 5分鐘
4
+ 15分鐘
5
+
6
+
7
+ 時間 和數字運算,會當成ms進行運算
8
+
9
+ 停止計時
10
+ ``` javascript=
11
+ const pid = setInterval()
12
+ clearInterval(pid);
13
+ ```
14
+
15
+ ~~ 範例程式碼的` timer ` 視為閉包~~
16
+
17
+
18
+ 忽略預設行為
19
+ ``` javascript=
20
+ e.preventDefault();
21
+ ```
Original file line number Diff line number Diff line change 1
1
const timers = document . querySelectorAll ( '.timer__button' ) ;
2
2
const show_end_time = document . querySelector ( '.display__end-time' ) ;
3
3
const show_remaining_time = document . querySelector ( '.display__time-left' ) ;
4
+
5
+ document . customForm . addEventListener ( 'submit' , function ( e ) {
6
+ e . preventDefault ( ) ;
7
+ const sec_time = this . minutes . value * 60 * 1000 ;
8
+ const now = new Date ( ) ;
9
+ end_time = new Date ( now . getTime ( ) + sec_time ) ;
10
+
11
+ const diff = new Date ( sec_time ) ;
12
+ show_end_time . textContent = `倒數到: ${ end_time . getHours ( ) } :${ end_time . getMinutes ( ) } :${ end_time . getSeconds ( ) } ` ;
13
+
14
+ clearInterval ( timer_pid ) ;
15
+ timer_pid = setInterval ( countDownTimer , 500 ) ;
16
+
17
+
18
+ this . reset ( ) ;
19
+ } ) ;
20
+
21
+
22
+
4
23
end_time = new Date ( ) ;
5
24
6
25
let timer_pid ;
@@ -10,7 +29,7 @@ function countDownTimer() {
10
29
const now = new Date ( ) ;
11
30
const remaining_time = new Date ( end_time - now ) ;
12
31
show_remaining_time . textContent = `${ remaining_time . getMinutes ( ) } :${ remaining_time . getSeconds ( ) } ` ;
13
- if ( remaining_time < 0 ) clearInterval ( timer_pid ) ;
32
+ if ( remaining_time <= 1 ) clearInterval ( timer_pid ) ;
14
33
}
15
34
16
35
function setTimer ( ) {
You can’t perform that action at this time.
0 commit comments