// HTML Code
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="main.js"></script>
</head>
<body>
<li class="item" data-done-state="true">Erster Eintrag</li>
<li class="item" data-done-state="false">Zweiter Eintrag</li>
<li class="item" data-done-state="true">Dritter Eintrag</li>
</body>
</html>
//CSS Code
li {
background-color: khaki;
margin: 2px;
padding: 2px;
}
[data-done-state="true"] {
text-decoration: line-through;
}
//JS Code
window.onload = function() {
const nodes = document.querySelectorAll(".item");
for (const node of nodes) {
node.addEventListener("click", function(elem) {
switchDoneState(elem);
});
}
};
function switchDoneState(elem) {
const isDone = JSON.parse(elem.target.getAttribute("data-done-state"));
elem.target.setAttribute("data-done-state", !isDone);
}