Может тут кто-то подскажет решение проблемы? Пишу просто туду лист через классы, и не могу запустить метод deleteTask
, т.к не знаю как его закрепить к кнопке btn
class ToDo {
constructor({inputTask, addTask, finishedTask}) {
this.inputTask = inputTask;
this.addTask = addTask;
this.finishedTask = finishedTask;
addTask.onclick = () => this.add();
var less = this.finishedTask.querySelectorAll('li').lastChild
less.onclick = () => this.deleteTask();
}
createTask(task) {
let listItem = document.createElement('li');
let spanTask = document.createElement('span')
spanTask.className = "text"
spanTask.innerHTML = task;
let btn = document.createElement('button')
btn.classList = 'btnDelete'
btn.innerHTML = 'delete'
listItem.appendChild(spanTask);
listItem.appendChild(btn);
return listItem;
}
add() {
if(this.inputTask.value) {
let listItem = this.createTask(this.inputTask.value)
this.finishedTask.appendChild(listItem)
this.inputTask.value = '';
}
}
deleteTask() {
let listItem = this.parentNode;
let ul = listItem.parentNode;
ul.removeChild(listItem)
}
}
let todo = new ToDo ({
inputTask: document.getElementById('new-task'),
addTask: document.getElementById('add'),
finishedTask: document.getElementById('unfinished-tasks')
})
В данном коде уже добавляется один обработчик click
, для элемента
var less = this.finishedTask.querySelectorAll('li').lastChild
Тот же подход надо было использовать применительно к создаваемой кнопке:
let btn = document.createElement('button');
btn.classList = 'btnDelete';
btn.innerHTML = 'delete';
btn.onclick = this.deleteTask;
Виртуальный выделенный сервер (VDS) становится отличным выбором
как в Webpack настроить CSS Modules чтобы генерировать вот такие классы (Hesh)
Переведите 4 строчку на нативный js пожалуйста
В моей программе, я вывожу forks репозитория, который вбиваю вручную