Метод внутри класса нужно записать в функцию, если кому будет нужно.
class Temp {
constructor(parent) {
this.parent = parent;
this.title = this.parent.querySelector('.title');
this.overlay = this.parent.querySelector('.overlay');
const show = () => this.show();
this.title.addEventListener('mouseover', show);
this.overlay.addEventListener('mouseout', show);
this.overlay.addEventListener('click', () => {
this.title.removeEventListener('mouseover', show);
this.overlay.removeEventListener('mouseout', show);
show();
});
}
show() {
if (!this.overlay.classList.contains('overlay--visible')) {
this.overlay.classList.add('overlay--visible');
} else {
this.overlay.classList.remove('overlay--visible');
}
}
}
let temp = document.querySelector('.container');
new Temp(temp);