Переключить многоуровневый ul с mootools - PullRequest
0 голосов
/ 13 декабря 2010

Привет, я бы хотел переключить огромный многоуровневый ul с помощью mootools 1.1 или простого javascript.Список выглядит следующим образом: HTML:

 <ul>
    <li>aaa</li>
    <li>bbb</li>
    <li>ccc</li>
    <li>
        <ul>
            <li>ddd
                <ul>
                    <li>fff</li>    
                    <li>ggg</li>
                </ul>
            </li>
            <li>eee</li>
        </ul>
    </li>
 </ul>

Сначала я хотел бы показать развернутый первый уровень, а остальные уровни свернуты, и когда каждый из элементов спискащелкнул, чтобы развернуть ul под ним.

Возможно ли это сделать без (значительного) изменения HTML выше?Из документации я вижу, что Fx.Slide является наиболее подходящим, однако он принимает идентификатор элемента в качестве параметра, что означает, что я должен назначить идентификаторы для каждого элемента списка.Есть ли способ с помощью селекторов коллекций элементов, начиная сверху?

1 Ответ

0 голосов
/ 14 декабря 2010

Я не уверен, почему я скажу применить с очень старой версией 1.1.Однако, по крайней мере, начиная с 1.2, элемент, который вам нужно передать, это либо ID (как вы сказали), либо фактический элемент.

Если вы можете использовать другую версию, чем 1.1, попробуйте 1.3, что облегчаетчтобы выбрать элементы, которые вы хотите.

Здесь, я полагаю, вам нужен каждый элемент <ul>, который имеет прямой <li> в качестве родителя.В MooTools 1.3 есть новый движок селектора Slick, который довольно легко справится с этим: ul !> li.

Однако я не уверен (у меня не получилось), что прямые дочерние селекторы работают правильно с 1.1.

Вот что я придумал: http://jsfiddle.net/rCfwq/

...