-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
80 lines (66 loc) · 2.47 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<html>
<head>
<title>Reactions Timer</title>
<style type="text/css">
#shape {
width: 150px;
height: 150px;
background-color: #213421;
display: none;
position: relative;
}
.bold {
font-weight: bold;
}
</style>
</head>
<body>
<h1>Test Your Reactions!</h1>
<p>Click on the boxes and circles as quickly as you can!</p>
<p class="bold">Your Time: <span id="timeTaken"></span></p>
<div id="shape"></div>
<script type="text/javascript">
var start = new Date().getTime();
// GENERATE RANDOM COLORS
function getRandomColors() {
var letters = "0123456789ABCDF".split('');
var color = "#";
for(var i = 0; i < 6; i++) {
color+= letters[Math.floor(Math.random()*6)];
}
return color;
}
// MAKE THE SHAPE APPEAR AND CHANGE THE COLOR AND POSITION
function makeShapeAppear() {
start = new Date().getTime();
var top = Math.random() * 300;
var left = Math.random() * 300;
var width = Math.random() * 300;
if(Math.random() > 0.5) {
document.getElementById("shape").style.borderRadius = "50%"
}else {
document.getElementById("shape").style.borderRadius = "0";
}
document.getElementById("shape").style.display = "block";
document.getElementById("shape").style.top = top + "px";
document.getElementById("shape").style.left = left + "px";
document.getElementById("shape").style.width = width + "px";
document.getElementById("shape").style.height = width + "px";
document.getElementById("shape").style.backgroundColor = getRandomColors();
}
// MAKE THE SHAPE APPEAR EVERY 2 SECONDS
function appearAfterDelay() {
setTimeout(makeShapeAppear, 2000);
}
appearAfterDelay();
// GET THE TIME TAKEN AND CALL appearAfterDelay FUNCTION WHEN SHAPE IS CLICK
document.getElementById("shape").onclick = function() {
var end = new Date().getTime();
var timeTaken = (end - start) / 1000;
document.getElementById("shape").style.display = "none";
document.getElementById("timeTaken").innerHTML = timeTaken + "s";
appearAfterDelay();
}
</script>
</body>
</html>