From 6c71321076b12f0adf96612dfde5fb6f519d2318 Mon Sep 17 00:00:00 2001 From: kosipov Date: Thu, 6 Nov 2025 17:53:27 +0300 Subject: [PATCH] add logic for habbit done --- app.js | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/app.js b/app.js index 208c6b8..e631cd5 100644 --- a/app.js +++ b/app.js @@ -1,25 +1,42 @@ +// Что нам нужно для работы кнопки Отметить выполнение? + // 1. Найти все кнопки отметить выполнение. + // 2. На каждую кнопку повесить слушатель события клик(нажатие мышью) + // 3. Внутри слушателя события выполнить логику выполнения привычки - вызвать функцию markHabitDone + // 4. Перерисовать интерфейс + const HabitTrackerApp = { elements: { habitGrid: null, addHabitForm: null, - addHabbitButton: null + addHabbitButton: null, + habbitDoneButtons: [], }, init: function() { this.loadElements(); this.render(); + this.setupEventListeners(); }, setupEventListeners: function() { this.elements.addHabbitButton.addEventListener('click', () => { - this.elements.addHabitForm.style.display = 'block'; + //this.elements.addHabitForm.style.display = 'block'; }); + this.elements.habbitDoneButtons.forEach( + button => button.addEventListener('click', + () => console.log('Привычка выполнена') + ) + ); + // пройти циклом по habbitDoneButtons. На каждый элемент массива + // добавить addEventListener по клику. + // и в обработчике события вывести console.log }, loadElements: function() { this.elements.habitGrid = document.getElementById('habits-grid'); this.elements.addHabitForm = document.getElementById('add-habit-form'); this.elements.addHabbitButton = document.getElementById('add-habbit-button'); + this.elements.habbitDoneButtons = document.getElementsByClassName('button-primary'); }, render: function() {