просто о сложном


Простейшее дерево на javascript

tags: javascript

В статье рассмотрено создание древовидной структуры на "чистом" JavaScript с плавно раскрывающимися списками. Это скелет для построения полнофункционального скрипта, хотя можно использовать и в таком виде.

Сразу результат:

  1. something1
  2. something2
  3. something3
  4. something4 sublist
    1. something41
    2. something42 sublist
      1. something421
      2. something422
      3. something423 sublist
        1. something4231
        2. something4232
        3. something4233
      4. something424
    3. something43
    4. something44
    5. something45
  5. something5
  6. something6
  7. something7


CSS (нужен, в основном, для сквозной нумерации в списках, для ненумерованных списков можно оставить только display: none; для вложенных):


HTML:


JavaScript:





Можно обойтись без тегов <a> в узлах дерева (надо будет подправить querySelector), они добавлены для наглядности.


Быть добру!

posted on may 17, 2008, updated on september 11, 2025

Комментарии

не вижу рекламы на этом сайте. сорри, фаерфокс все режет. но автору спасибо :-*

mrded 16.08.2008 23:43 #

автору ОГРОМНОЕ спасибо! Побольше бы таких ресурсов в РУнете!

vnilov 22.03.2009 12:37 #

Отлично, а насколько сложно сделать чтобы пункты меню закрывались не повторным нажатием, а при нажатии на другие пункты?

shark182 21.05.2009 18:12 #

to shark182: совсем не сложно - при нажатии на пункт сначала закрывайте все, а затем открывайте тот, на который нажали.

Alek Veritov 22.05.2009 00:01 #

to Alek Veritov: Не ожидал настолько быстрой реакции. Нельзя ли подробнее? Меню например с одним уровнем вложенности. Думаю это дополнение пригодится и другим.

shark182 22.05.2009 13:34 #

to Alek Veritov: У меня уже цифры с ника выпадать стали от мозгового штурма. I need help! Как сначала закрыть все ветки и открыть нужную?
P.S. А я вам на баннер кликну))

shark18 25.05.2009 17:08 #

Подскажите пожалуйста как можно запомнить позицию на которой открыто дерево. Чтоб оно не сворачивалось после обновления страницы

vadim 20.03.2010 14:39 #

Запомнить позицию можно в куках или в сессии, а при обновлении восстанавливать.

Alek Veritov 20.03.2010 21:12 #

Спасибо Автору, респект за простоту =))) все просто до ужаса =))) а самое главное я нашел в этом то что искал !!!

Ksanti 17.03.2011 00:49 #
Отправка новых комментариев временно отключена. Извините, работаем над этим.


tags cloud