Добрый день!
Интересуюсь как оптимальнее искать элементы в выборке.
И так, есть блок, а в него вложены другие, до которых я хочу добраться и повесить к примеру обработчик.
Делать отдельную выборку по каждому из нужных элементов не хочется (медленно).
Думаю бегать по выборке, потом идти вглубь и там искать, но мне кажется есть более изящные решения.
Подскажите более рациональный поиск внутри выборки.
<div class="switcher">
<input id="switcher" type="checkbox" hidden="hidden"/>
<div class="switcher__wrap">
<label for="switcher" class="switcher__item switcher__on">✔</label>
<label for="switcher" class="switcher__item switcher__toggle">|||</label>
<label for="switcher" class="switcher__item switcher__off">✘</label>
</div>
</div>
var switcher;
// цель switcher__toggle
switcher = function() {
var switcher;
switcher = document.querySelector('.switcher');
console.dir(switcher.children[1].children[1].classList.contains('switcher__toggle')); // прямой путь
};
new switcher;
Является ли выходом использование делегирования?
Дойдя до нужного с помощью closest и если такой элемент присутствует, выбрать его и повесить обработчик.