Я создаю простую функцию, чтобы закрыть флеш-сообщение div на событие click, но мой слушатель не стреляет.Слушатель событий не стрелял по клику
Я написал 3 различных функции, чтобы попытаться заставить их работать, но ничего не происходит, и консоль Chrome не говорит мне ничего.
Мой первый был в стиле класса ES6, это один:
class closeFlashMessages {
constructor() {
this.getFlashMessages = document.querySelector("#flash-messages");
this.addEventListeners();
}
close() {
console.log(this.getFlashMessages);
this.getFlashMessages.className = "hide";
}
addEventListeners() {
if(this.getFlashMessages)
this.getFlashMessages.addEventListener("click", this.close);
}
}
new closeFlashMessages();
Моя вторая была такова:
(function(){
let getFlashMessages = document.querySelector("#flash-messages");
function close() {
console.log(getFlashMessages);
getFlashMessages.className = "hide";
}
function addEventListeners() {
getFlashMessages.addEventListener("click", function() {
close()
});
}
addEventListeners();
});
Мой последний это:
(function(){
let getFlashMessages = document.getElementById("flash-messages");
getFlashMessages.addEventListener("click", close(getFlashMessages));
function close (id) {
console.log(getFlashMessages);
getFlashMessages.className = "hide";
}
});
Мой HTML:
<div id="flash-messages">
<div class="flash success">
<p>Recept byl přidán do nákupního seznamu.</p>
</div>
</div>
Но никто из них не работал! Я не понимаю
С первых двух я получал undefined на моем this.getFlashMessages
также не уверен, почему.