-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
52 lines (38 loc) · 1.74 KB
/
app.js
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
document.addEventListener('DOMContentLoaded', function () {
const chosenDistance = document.querySelector("#distance");
let hours = document.querySelector("#hours");
let minutes = document.querySelector("#minutes");
let seconds = document.querySelector("#seconds");
let paceKm = document.querySelector(".pace-km");
let paceMile = document.querySelector(".pace-mile");
const calculateButton = document.querySelector(".calculate-btn");
function getPace() {
let hoursInSeconds = parseInt(hours.value * 3600);
let minutesInSeconds = parseInt(minutes.value * 60);
let secondsInSeconds = parseInt(seconds.value);
let timeInSeconds = hoursInSeconds + minutesInSeconds + secondsInSeconds;
let distanceInKm = chosenDistance.value / 1000;
let distanceInMiles = chosenDistance.value / 1000 / 1.609344;
let paceInKm = timeInSeconds / distanceInKm;
let paceInMiles = timeInSeconds / distanceInMiles;
let minutesPaceInKm = paceInKm / 60;
let minutesPaceInMiles = paceInMiles / 60;
let secondsPaceInKm = paceInKm % 60;
let secondsPaceInMiles = paceInMiles % 60;
if (secondsPaceInKm === 0) {
secondsPaceInKm = "00";
}
getPaceInKilometers();
getPaceInMiles();
console.log(hoursInSeconds);
function getPaceInKilometers() {
paceKm.innerHTML = `${Math.floor(minutesPaceInKm)} min ${(secondsPaceInKm >= 0 && secondsPaceInKm < 10) ? "0" : ""}${Math.floor(secondsPaceInKm)} sec / km`
}
function getPaceInMiles() {
paceMile.innerHTML = `${Math.floor(minutesPaceInMiles)} min ${(secondsPaceInMiles >= 0 && secondsPaceInMiles < 10) ? "0" : ""}${Math.floor(secondsPaceInMiles)} sec / mile`
}
}
calculateButton.addEventListener("click", function () {
getPace();
})
});