【发布时间】:2013-04-21 15:27:39
【问题描述】:
我在使用 jQuery 创建多级 each() 时遇到问题。这是我的代码,但仅限于 3 个级别。我想让它适用于无限关卡。
这是一个 JsFiddle 演示链接:http://jsfiddle.net/cWJH5/1/
HTML
<nav id="navMenu">
<ul>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
<ul>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
<ul>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
<ul>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
</li>
<li><a href="#">DEMO</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</nav>
JS
Startlevel = 0;
$('#menu > ul').each(function (i) {
$(this).addClass('item-' + i + ' level-' + Startlevel );
menuLevel++;
$(this).find('> li > ul').each(function (i) {
$(this).addClass('item-' + i + ' level-' + Startlevel );
menuLevel++;
$(this).find('> li > ul').each(function (i) {
$(this).addClass('item-' + i + ' level-' + Startlevel );
menuLevel++;
});
});
});
【问题讨论】:
标签: javascript jquery loops recursion each