@alex0176

Как обойти DOM дерево с поиском нужно класса на JS?

Привет всем!
Есть такая задача. Есть вложенный список данных (уровней может быть сколь угодно). При клике на одном из элементов списка (ссылка) ей устанавливаться класс, например, isActive, Когда пользователь кликнет на другом элемента списка, нужно чтобы на текущий элемент установился класс, а вот по всем остальным ссылкам вложенного списка этот класс удалился.
Так как у нас есть вложенные вертикальные списки, а также и горизонтальные элементы спсика (в некоторых элементах вложенности может и не быть), то нужно скорее всего как то рекурсивно пробегаться по дереву узлов и искать нужные элементы.
Буду признателен за любую помощь.
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
neuotq
@neuotq
Прокрастинация
Алгоритм:
0. В любом случае есть родительский контейнер, поэтому работаешь от него. Лучше чтобы у него был id, тогда при работе функции отслеживания ты сможешь её запускать с нужным айди, она будет универсально и поддерживать множество независимых подобных контейнеров с этим меню.
1. По клику ищешь текущий isActive (с учетом специфичности родительского контейнера) и снимаешь все активные.
2. Делаешь кликнутый активным.

Условный пример. Не продашн рэди) Но смысл ясен.

Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час