JavaScript | Как получить родителя по классу?

JavaScript | Как получить родителя по классу?

Решение для нахождения родителей нескольких элементов

Потестируем на примере интернет-магазина.

Элемент с классом c-product-tile-picture__holder - разметка документа
Элемент с классом c-product-tile-picture__holder — разметка документа

 
Для эксперимента возьмём класс «c-product-tile-picture__holder».

Для начала нужно отобрать все элементы по классу:

document.querySelectorAll(".c-product-tile-picture__holder")
22 элемента с классом c-product-tile-picture__holder - JavaScript
22 элемента с классом c-product-tile-picture__holder — JavaScript

 

Теперь можно преобразовать NodeList в Array:

Array.from(document.querySelectorAll(".c-product-tile-picture__holder"))

 

Теперь можно пройтись по элементам массива и для каждого получить родителя:

Array.from(document.querySelectorAll(".c-product-tile-picture__holder")).map(i=>i.parentNode)

Мы использовали атрибут узлов — parentNode

 

Информационные ссылки

DOM

DOM | Интерфейс Node

DOM —  атрибут parentNode

DOM | Миксин ParentNode

DOM — метод querySelectorAll(selectors)

JavaScript | Как получить список каких-либо HTML-элементов из документа?