1
+
1
2
// document.querySelector() is used to select an element from the document using its ID
2
3
let captchaText = document . querySelector ( '#captcha' ) ;
4
+ var ctx = captchaText . getContext ( "2d" ) ;
5
+ ctx . font = "30px Roboto" ;
6
+ ctx . fillStyle = "#08e5ff" ;
7
+
8
+
3
9
let userText = document . querySelector ( '#textBox' ) ;
4
10
let submitButton = document . querySelector ( '#submitButton' ) ;
5
11
let output = document . querySelector ( '#output' ) ;
@@ -15,7 +21,8 @@ let emptyArr = [];
15
21
for ( let i = 1 ; i <= 7 ; i ++ ) {
16
22
emptyArr . push ( alphaNums [ Math . floor ( Math . random ( ) * alphaNums . length ) ] ) ;
17
23
}
18
- captchaText . innerHTML = emptyArr . join ( '' ) ;
24
+ var c = emptyArr . join ( '' ) ;
25
+ ctx . fillText ( emptyArr . join ( '' ) , captchaText . width / 4 , captchaText . height / 2 ) ;
19
26
20
27
21
28
// This event listener is stimulated whenever the user press the "Enter" button
@@ -24,7 +31,7 @@ captchaText.innerHTML = emptyArr.join('');
24
31
userText . addEventListener ( 'keyup' , function ( e ) {
25
32
// Key Code Value of "Enter" Button is 13
26
33
if ( e . keyCode === 13 ) {
27
- if ( userText . value === captchaText . innerHTML ) {
34
+ if ( userText . value === c ) {
28
35
output . classList . add ( "correctCaptcha" ) ;
29
36
output . innerHTML = "Correct!" ;
30
37
} else {
@@ -38,7 +45,7 @@ userText.addEventListener('keyup', function(e) {
38
45
// "Correct!" or "Incorrect, please try again" message is
39
46
// displayed after validating the input text with CAPTCHA
40
47
submitButton . addEventListener ( 'click' , function ( ) {
41
- if ( userText . value === captchaText . innerHTML ) {
48
+ if ( userText . value === c ) {
42
49
output . classList . add ( "correctCaptcha" ) ;
43
50
output . innerHTML = "Correct!" ;
44
51
} else {
@@ -55,6 +62,8 @@ refreshButton.addEventListener('click', function() {
55
62
for ( let j = 1 ; j <= 7 ; j ++ ) {
56
63
refreshArr . push ( alphaNums [ Math . floor ( Math . random ( ) * alphaNums . length ) ] ) ;
57
64
}
58
- captchaText . innerHTML = refreshArr . join ( '' ) ;
65
+ ctx . clearRect ( 0 , 0 , captchaText . width , captchaText . height ) ;
66
+ c = refreshArr . join ( '' ) ;
67
+ ctx . fillText ( refreshArr . join ( '' ) , captchaText . width / 4 , captchaText . height / 2 ) ;
59
68
output . innerHTML = "" ;
60
69
} ) ;
0 commit comments