@@ -4,6 +4,7 @@ const colors = document.getElementsByClassName("jsColor");
4
4
const range = document . getElementById ( "jsRange" ) ;
5
5
const mode = document . getElementById ( "jsMode" ) ;
6
6
const saveBtn = document . getElementById ( "jsSave" ) ;
7
+ const clearBtn = document . getElementById ( "jsClear" ) ;
7
8
8
9
canvas . width = 700 ;
9
10
canvas . height = 700 ;
@@ -28,7 +29,7 @@ function startPainting(){
28
29
29
30
function onMouseMove ( event ) {
30
31
const x = event . offsetX ;
31
- const y = event . offsetY ;
32
+ const y = event . offsetY ;
32
33
if ( ! painting ) {
33
34
ctx . beginPath ( ) ;
34
35
ctx . moveTo ( x , y ) ;
@@ -58,8 +59,12 @@ function handleModeClick(event) {
58
59
mode . innerText = "Paint" ;
59
60
ctx . fillStuye = ctx . strokeStyle ;
60
61
}
62
+ }
61
63
64
+ function handleClearClick ( event ) {
65
+ ctx . fillRect ( 0 , 0 , canvas . width , canvas . height ) ;
62
66
}
67
+
63
68
function handleCanvasClick ( ) {
64
69
if ( filling ) {
65
70
ctx . fillRect ( 0 , 0 , canvas . width , canvas . height ) ;
@@ -69,6 +74,7 @@ function handleCanvasClick(){
69
74
function handleCM ( event ) {
70
75
event . preventDefault ( ) ;
71
76
}
77
+
72
78
function handleSaveClick ( event ) {
73
79
const image = canvas . toDataURL ( ) ;
74
80
const link = document . createElement ( "a" ) ;
@@ -85,8 +91,10 @@ if(canvas){
85
91
canvas . addEventListener ( "click" , handleCanvasClick ) ;
86
92
canvas . addEventListener ( "contextmenu" , handleCM ) ;
87
93
}
94
+
88
95
Array . from ( colors ) . forEach ( color =>
89
96
color . addEventListener ( "click" , handleColorClick ) ) ;
97
+
90
98
if ( range ) {
91
99
range . addEventListener ( "input" , handleRangeChange ) ;
92
100
}
@@ -96,5 +104,8 @@ if(mode) {
96
104
}
97
105
98
106
if ( saveBtn ) {
99
- saveBtn . addEventListener ( "click" , handleSaveClick )
107
+ saveBtn . addEventListener ( "click" , handleSaveClick ) ;
108
+ }
109
+ if ( clearBtn ) {
110
+ clearBtn . addEventListener ( "click" , handleClearClick ) ;
100
111
}
0 commit comments