diff --git a/app.js b/app.js index db6c317..fc3af67 100644 --- a/app.js +++ b/app.js @@ -15,6 +15,7 @@ const HabitTrackerApp = { init: function() { this.loadElements(); this.render(); + this.loadDynamicElements(); this.setupEventListeners(); }, @@ -23,13 +24,7 @@ const HabitTrackerApp = { //this.elements.addHabitForm.style.display = 'block'; }); - // 2 вариант - const timerId = setInterval(() => { - if (this.elements.habbitDoneButtons.length == 0) { - return; - } - - this.elements.habbitDoneButtons.forEach( + this.elements.habbitDoneButtons.forEach( button => { return button.addEventListener('click', (event) => { const cardId = event.target.closest('.habit-card').dataset.habitId; @@ -40,9 +35,6 @@ const HabitTrackerApp = { }); } ); - }, 1000); - - setTimeout(() => clearInterval(timerId), 3000); // пройти циклом по habbitDoneButtons. На каждый элемент массива // добавить addEventListener по клику. @@ -59,6 +51,10 @@ const HabitTrackerApp = { }, + loadDynamicElements: function() { + this.elements.habbitDoneButtons = document.querySelectorAll('.button--primary'); + }, + render: function() { const habitsHTML = HabitManager.habits.map(habit => { const cardClass = `habit-card ${habit.isCompleted ? 'habit-card--completed' : ''}`;