Объясните мне, пожалуйста, как делают делегирование без явного указания строкой класса.
Например во всех примерах делают так:
if (e.target.closest('.class')) {
//
}
Но если у меня констркуция:
const elem = document.querySelector('.elem');
if (e.target.closest('.elem')) {
elem.addClass('active');
}
(Это псевдопример)
То я по сути дублирую строку класса, так как closest принимает в себя только строку.
Вопрос:
Как вообще правильно делегировать такие вещи?Когда у меня есть переменная и мне еще нужно проверить таргет по этой переменной?
То есть в идеале я бы хотел что-то типа:
const elem = document.querySelector('.elem');
if (e.target.closest(elem)) {
elem.addClass('active');
}
Но я не могу так сделать.
Суть одна - я хочу избавить от дублирования строки класса при проерки и при объявлении переменной.
У меня были мысли получать класс перменной, делать его строкой и проверять уже по этой новой переменной, но это тупо.
Спасибо.