Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Про статью Грамотное дерево (https://javascript.ru/forum/dom-window/21587-pro-statyu-gramotnoe-derevo.html)

Иваннн 16.09.2011 08:41

Про статью Грамотное дерево
 
Доброго времени суток! Была необходимость сделать дерево на javascript. Я никогда деревья не "садил", поэтому сел изобретать велосипед,(не хотел брать у кого-то). Рассмотрел несколько вариантов. Вариант, рассматриваемый в вышеуказанной статье не помнил, почему отбросил, а когда начал переделывать свой код согласно статье, ибо он на много проще и изящнее моего возник вопрос.: все хорошо и красиво получается, но предположим, что последний элемент в списке (допустим. id='a1') тоже имеет детей и они раскрыты. Если квадратик с плюсиком элемента "а1" нанизывается на нарисованную в бекгроунде родителя "а1" вертикальную линию, то почему при открытом вложенном в "а1" списке бекгроунд родителя не продолжается до конца последнего вложенного в 'a1' элемента (ведь родитель 'a1' должен растянуться, чтобы вместить в себя всех детей) ?

tenshi 16.09.2011 20:32

разумеется все читали эту статью х)

Gvozd 16.09.2011 23:16

Цитата:

Сообщение от Иваннн
Если квадратик с плюсиком элемента "а1" нанизывается на нарисованную в бекгроунде родителя "а1" вертикальную линию

Если под элементом a1 вы подразумеваете последний элемент(li) списка(ul), то вообще-то у его родителя(ul) нету никакого бекграунда.

Бекграунд есть у соседей сверху.
У всех элементов li есть бекграунд в виде черточки, кроме последнего(у него класс IsLast, который переопределяет ему бекграунд на НЕповторяющийся)

в результате поулчается вариант слева на картинке.
справа же, показан вариант, при отключенном классе isLast(я так понимаю про этот вариант вы и говорили)
Вложение 930

Иваннн 19.09.2011 15:19

Все, догнал! Спасибо.
 
Все, догнал! Спасибо. Как выясняется я - не гений, обидно :(


Часовой пояс GMT +3, время: 22:45.