-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
94 lines (76 loc) · 2.44 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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
var input = document.getElementById("userInput");
var button = document.getElementById("enterButton");
var ulFirst = document.querySelector("#firstList");
var ulComplete = document.querySelector("#listCompleted");
var deleteButton = document.getElementById("deleteButton");
var divLine = document.getElementById("compList");
//Delete button does not appear until an item is deleted
deleteButton.hidden = true;
//input if button is clicked
button.addEventListener("click", addListAfterClick);
//input is enter key is pressed
input.addEventListener("keypress", addListAfterKeypress);
//input transferred to ul
function createFirstListElement() {
var li = document.createElement("li");
li.appendChild(document.createTextNode(input.value));
li.classList.add("listItem");
ulFirst.appendChild(li);
input.value = "";
firstListElement(li);
}
//Function to listen when lis are clicked
function firstListElement(li) {
// Crossed out when clicked
li.addEventListener("click", function() {
li.classList.add("done");
// move from one ul to the other
ulComplete.appendChild(li);
createDoneListElement(li);
});
}
//Function to listen when crossed out lis are clicked
function createDoneListElement(li) {
console.log(li);
ulComplete.classList.add("doneList");
divLine.classList.add("completedList");
deleteButton.hidden = false;
li.addEventListener("click", function() {
//remove crossed-out
li.classList.remove("done");
// move from one ul to the other
ulFirst.appendChild(li);
firstListElement(li);
//to check if crossed-out list is empty
if (!ulComplete.hasChildNodes()) {
ulComplete.classList.remove("doneList");
deleteButton.hidden = true;
divLine.classList.remove("completedList");
}
});
//Delete button to empty crossed-out list
deleteButton.onclick = function() {
var first = ulComplete.firstElementChild;
while (first) {
first.remove();
first = ulComplete.firstElementChild;
}
if (!ulComplete.hasChildNodes()) {
ulComplete.classList.remove("doneList");
deleteButton.hidden = true;
divLine.classList.remove("completedList");
}
};
}
//function to add to list after click
function addListAfterClick() {
if (input.value.length > 0) {
createFirstListElement();
}
}
//function to add to list after Enter
function addListAfterKeypress(event) {
if (input.value.length > 0 && event.keyCode === 13) {
createFirstListElement();
}
}