-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoptions.js
40 lines (38 loc) · 1.34 KB
/
options.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
refreshWorkspace();
deleteButtonHandler();
function refreshWorkspace() {
let arrayToDisplay = Object.keys(localStorage);
let refresher = document.getElementById("refresher");
refresher.innerHTML = '';
if (arrayToDisplay.length) {
arrayToDisplay.map(item => {
let paragraph = document.createElement("p");
paragraph.innerText = item;
let button = document.createElement("button");
button.setAttribute("id", item);
button.setAttribute("class", "getter")
let image = document.createElement("img");
image.src = "images/delete.png";
button.appendChild(image);
let listTag = document.createElement("li");
listTag.appendChild(paragraph);
listTag.appendChild(button);
refresher.appendChild(listTag);
});
} else {
let div = document.createElement("div");
div.innerText = "[ Empty ]";
div.setAttribute("id", "emptyWorkspace");
refresher.appendChild(div);
}
deleteButtonHandler();
}
function deleteButtonHandler() {
let buttons = Array.from(document.getElementsByClassName("getter"));
buttons.forEach(btn => {
btn.addEventListener("click", () => {
localStorage.removeItem(btn.id);
refreshWorkspace();
})
});
}