-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
78 lines (61 loc) · 2.27 KB
/
index.js
File metadata and controls
78 lines (61 loc) · 2.27 KB
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
// function updateProressBar(progressBar, value) {
// value = Math.round(value);
// progressBar.querySelector(".progress-bar-fill").style.width = `${value}%`;
// }
document.addEventListener("DOMContentLoaded", () => {
const avatarBox = document.querySelector(".avatar");
const progressFill = document.querySelector(".progress-bar-fill");
let progress = 0;
function updateProgressBarManual() {
progress = Math.min(progress + 3, 100);
progressFill.style.width = `${progress}%`;
if (progress == 100) {
progress = 0;
}
}
avatarBox.addEventListener("click", updateProgressBarManual);
});
const addBtn = document.getElementById("add-task");
const taskField = document.getElementById("task-field");
const taskList = document.getElementById("task-list");
addBtn.addEventListener("click", () => {
const taskText = taskField.value.trim();
if (taskText == "") return;
const li = document.createElement("li");
li.innerHTML = `
<span class="task-text">${taskText}</span>
<button class="complete-btn">✓</button>
`;
taskList.appendChild(li);
taskField.value = "";
li.querySelector(".complete-btn").addEventListener("click", () => {
li.classList.toggle("task-complete");
// moving completed tasks to bottom
requestAnimationFrame(() => {
if (li.classList.contains("task-complete")) {
taskList.appendChild(li);
} else {
const completedTasks = [...taskList.querySelectorAll(".task-complete")];
if (completedTasks.length > 0) {
taskList.insertBefore(li, completedTasks[0]);
} else {
taskList.insertBefore(li, taskList.firstChild);
}
}
});
});
});
taskField.addEventListener("keydown", (e) => {
if (e.key === "Enter") {
addBtn.click();
}
});
// hamburger menu
const hamburger = document.getElementById("hamburger");
const sideMenu = document.getElementById("side-menu");
hamburger.addEventListener("click", () => {
sideMenu.classList.toggle("open");
});
document.getElementById("avatar-page").addEventListener("click", () => {
window.location.href = "avatar/avatar.html";
});