From 82933ce56597bf4b41d27a98eca978a77dec9cd4 Mon Sep 17 00:00:00 2001 From: Matt Huntington Date: Fri, 10 Nov 2023 11:53:38 -0500 Subject: [PATCH] attach listeners to new items --- app.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/app.js b/app.js index 6133041..f737cbd 100644 --- a/app.js +++ b/app.js @@ -19,17 +19,24 @@ for(const element of lisAndBody){ }) } +const deleteItem = (event)=>{ + event.target.parentNode.remove() +} + const deleteButtons = document.querySelectorAll('button.delete'); for (const deleteButton of deleteButtons) { - deleteButton.addEventListener('click', (event)=>{ - event.target.parentNode.remove() - }) + deleteButton.addEventListener('click', deleteItem) +} + +const createNewItem = (event)=>{ + const template = document.querySelector('template').content.children[0]; + const newItem = template.cloneNode(true) + newItem.children[1].addEventListener('click',createNewItem); + newItem.children[3].addEventListener('click',deleteItem); + event.target.parentNode.children[0].appendChild(newItem) } const addButtons = document.querySelectorAll('button.add'); for (const addButton of addButtons) { - addButton.addEventListener('click', (event)=>{ - const template = document.querySelector('template').content.children[0]; - event.target.parentNode.children[0].appendChild(template.cloneNode(true)) - }) + addButton.addEventListener('click',createNewItem); }