0

以下のような動的に構築された順序付けられていないリストがあり、jquery を使用してリストがロードされたら、特定の ID を持つリンクの上のすべてのノードを展開する方法を見つけたいと考えています。

たとえば、id=1905 のリンクを表示するために必要なすべてのノードを展開し、他のすべてのノードを折りたたんだままにしておくことができます。

これが理にかなっていることを願っています。

    <div id="menu">
        <ul>
            <li><a class="inactive" href="#"><img src="images/folder.png">Baking</a>
                <ul>
                    <li><a class="inactive" href="#">Bars</a>
                        <ul>
                            <li><a id="1905" class="rlink" href="url">Rasberry Crumb Breakfast Bars</a></li>
                        </ul>
                    </li>
                </ul>
            </li>
            <li><a id="1803" class="rlink" href="url">text</a></li>
        </ul>
    </div>

したがって、リストは最初に次のようにロードされます

ここに画像の説明を入力

そして、私はそれをこのように拡張したいと思います

ここに画像の説明を入力

4

1 に答える 1

0

必要な要素の親ノードを上に移動して、それらをアクティブにすることができます。

var parentList= $('#link1905').closest('ul');

while (parentList.length > 0) {
    parentList.prev('a').removeClass('inactive'); /* and/or .addClass('active'); */

    parentList = parentList.closest('ul');
}

また、要素 ID は文字で始める必要があります: HTML の id 属性の有効な値は何ですか?

于 2012-11-18T10:54:15.363 に答える