JSFiddle - React, Tailwind, and code Playground
HTML
<div id="timer"></div>
<p>
Text for typing test will go here. </p>
<textarea onkeypress="myFunction()" id="textarea" rows="14" cols="150" placeholder="Start typing here..."></textarea>
<script>
var counter = 0;
function startTimer(duration, display) {
var timer = duration,
minutes, seconds;
setInterval(function() {
minutes = parseInt(timer / 60, 10)
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
if (--timer < 0) {
alert("You type " + counter + " WPM");
timer = duration;
}
}, 1000);
}
function myFunction() {
if (counter == 0) {
var oneMinute = 60,
display = document.querySelector('#timer');
startTimer(oneMinute, display);
counter++;
} else {
counter++;
}
};
</script>