-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
59 lines (52 loc) · 1.7 KB
/
script.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
53
54
55
56
57
58
let selectedPage = localStorage.getItem("selected_page");
let selectedItem = null;
// set selected page
if (selectedPage === null || selectedPage === undefined) {
localStorage.setItem("selected_page", "home");
}
selectedPage = localStorage.getItem("selected_page");
unselectAll();
setNewSelectedItem(selectedPage);
loadPage(selectedPage);
// change selectedPage
document.querySelectorAll('.logo_wrapper').forEach(item => {
item.addEventListener('click', event => {
selectedPage = item.id;
selectedItem = item;
unselectAll();
setNewSelectedItem(selectedPage);
loadPage(selectedPage);
console.log("selectedPage", selectedPage);
console.log("selectedItem", selectedItem);
})
})
// remove is_selected class from all object
function unselectAll() {
document.querySelectorAll('.logo_wrapper').forEach(item => {
item.classList.remove("is_selected");
localStorage.setItem("selected_page", null);
selectedItem = null;
})
}
// set is_selected class on all object
function setNewSelectedItem(pageName) {
document.querySelectorAll('.logo_wrapper').forEach(item => {
console.log(item.id, pageName)
if (item.id === pageName) {
selectedItem = item;
localStorage.setItem("selected_page", pageName);
item.classList.add("is_selected");
}
})
}
function loadPage(pageName) {
fetch("./pages/" + pageName + ".html")
.then(response => {
return response.text()
})
.then(data => {
document.querySelector("#page_container").innerHTML = data;
});
}
console.log("selectedPage", selectedPage);
console.log("selectedItem", selectedItem);