Skip to content

Commit 50dd1e0

Browse files
added
1 parent 27fe06b commit 50dd1e0

File tree

1 file changed

+98
-0
lines changed

1 file changed

+98
-0
lines changed

6PM_Batch/script.js

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
var textAreaBorder = document.querySelector("#text-area");
2+
var textArea = document.querySelector("#text-area");
3+
var originalText = document.querySelector(".text-section-div p").innerHTML;
4+
var resetButton = document.querySelector("#reset");
5+
var theTimer = document.querySelector(".timer");
6+
7+
var timer = 0;
8+
var minutes = 0;
9+
var seconds = 0;
10+
var milliSeconds = 0;
11+
var currentTime = "";
12+
var interval = 0;
13+
var timerRunning = false;
14+
15+
// Add leading zero to numbers 9 or below:
16+
function leadingZero(time) {
17+
18+
if(time <= 9){
19+
return "0"+time;
20+
}
21+
else{
22+
return time;
23+
}
24+
}
25+
26+
27+
// Run a standard minute/second/hundredths timer:
28+
//minutes = Math.floor((timer/100)/60);
29+
//seconds = Math.floor((timer/100) - (minutes * 60));
30+
//milliSeconds = Math.floor(timer- (seconds * 100) - (minutes * 6000));
31+
function startTimer() {
32+
minutes = Math.floor((timer/100)/60);
33+
seconds = Math.floor((timer/100) - (minutes * 60));
34+
milliSeconds = Math.floor(timer - (seconds * 100) - (minutes * 6000));
35+
36+
minutes = leadingZero(minutes);
37+
seconds = leadingZero(seconds);
38+
milliSeconds = leadingZero(milliSeconds);
39+
40+
currentTime = minutes + ":" + seconds + ":" + milliSeconds;
41+
42+
theTimer.innerHTML = currentTime;
43+
timer++;
44+
}
45+
46+
47+
48+
// Match the text entered with the provided text on the page:
49+
function spellCheck() {
50+
var textEntered = textArea.value;
51+
var partialText = originalText.substring(0,textEntered.length);
52+
53+
if(textEntered === originalText){
54+
textAreaBorder.style.borderColor = 'green';
55+
clearInterval(interval); // stop timer
56+
}
57+
else{
58+
if(textEntered === partialText){
59+
textAreaBorder.style.borderColor = 'lightblue';
60+
}
61+
else{
62+
textAreaBorder.style.borderColor = 'red';
63+
}
64+
}
65+
}
66+
67+
68+
69+
// Start the timer:
70+
function start() {
71+
var textEnteredLength = textArea.value.length;
72+
if(textEnteredLength === 0 && !timerRunning){
73+
//Start The Timer
74+
interval = setInterval(startTimer,10);
75+
timerRunning = true;
76+
}
77+
}
78+
79+
80+
// Reset everything:
81+
function reset() {
82+
clearInterval(interval);
83+
timer = 0;
84+
minutes = 0;
85+
seconds = 0;
86+
milliSeconds = 0;
87+
currentTime = "";
88+
interval = 0;
89+
timerRunning = false;
90+
theTimer.innerHTML = "00:00:00";
91+
textArea.value = "";
92+
textAreaBorder.style.borderColor = 'gray';
93+
}
94+
95+
// Event listeners for keyboard input and the reset button:
96+
textArea.addEventListener('keypress',start);
97+
textArea.addEventListener('keyup',spellCheck);
98+
resetButton.addEventListener('click',reset);

0 commit comments

Comments
 (0)