вернуться к уроку

Раскрывающееся дерево

важность: 5

Создайте дерево, которое по клику на заголовок скрывает-показывает потомков:

Требования:

  • Использовать только один обработчик событий (применить делегирование)
  • Клик вне текста заголовка (на пустом месте) ничего делать не должен.

Открыть песочницу для задачи.

Решение состоит из двух шагов:

  1. Оборачиваем текст каждого заголовка дерева в элемент <span>. Затем мы можем добавить стили CSS на :hover и обрабатывать клики только на тексте, т.к. ширина элемента <span> в точности совпадает с шириной текста.
  2. Устанавливаем обработчик на корневой узел дерева tree и ловим клики на элементах <span>, содержащих заголовки.

Открыть решение в песочнице.