这里很简单的问题,但它一直在困扰我一点。遍历列表元素,并添加类如果列表元素包含另一个列表
我有一个折叠式菜单设置,如下所示:
<ul id="menu" class="navigation">
<li><a href="#"><span>Dashboard</span></a>
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Articles & Posts</a></li>
<li><a href="#">Pages</a></li>
</ul>
</li>
<li><a href="#"><span class="icon_articles">Articles & Posts</span></a>
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Articles & Posts</a></li>
<li><a href="#">Pages</a></li>
</ul>
</li>
<li><a href="#"><span class="icon_pages">Pages</span></a></li>
<li><a href="#"><span class="icon_media">Media Gallery</span></a>
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Articles & Posts</a></li>
<li><a href="#">Pages</a></li>
</ul>
</li>
<li><a href="#"><span class="icon_calendar">Calendar</span></a></li>
<li><a href="#"><span class="icon_demos">Features & Demos</span></a>
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Articles & Posts</a></li>
<li><a href="#">Pages</a></li>
</ul>
</li>
<li><a href="#"><span class="icon_settings">Settings</span></a></li>
<li><a href="#"><span class="icon_logout">Logout</span></a></li>
</ul>
而且我已经得到了运行手风琴jQuery脚本:
function accordionMenu() {
$('ul.navigation ul').hide();
$('ul.navigation li a').click(
function() {
var parentElement = this.parentNode.parentNode.id;
var elementTest = $(this).next();
if((elementTest.is('ul')) && (elementTest.is(':visible'))) {
$('#' + parentElement + ' ul:visible').slideUp('fast');
$(this).removeClass('active');
return false;
}
if((elementTest.is('ul')) && (!elementTest.is(':visible'))) {
$('#' + parentElement + ' ul:visible').slideUp('fast');
elementTest.slideDown('fast');
$('ul.navigation a').removeClass('active');
$(this).addClass('active');
return false;
}
}
);
}
$(document).ready(function() {accordionMenu();});
现在我需要弄清楚如何循环浏览列表项目,并找到列表项目后面的列表项目(即单击时,下拉列表以显示隐藏列表)。然后我需要在每个结尾添加一个跨度(介于< />和< ul>之间)。就是这样。这只是让我感到困惑 - 我该怎么去做呢?
感谢,
亚历
问题的标题说你想添加一个类,但问题本身说明你想追加一个''元素 - 这是什么? – 2012-02-06 16:06:57