jQuery将类添加到某些元素
我有一个像这样的多级菜单:
- item 1
- item 1.1
- item 1.2
- item 2
- item 3
- item 3.1
- item 3.2
- item 4
在jQuery我有
$("#divId ul li:odd").addClass("blue"); $("#divId ul li:even").addClass("green");
问题是jQuery将类添加到所有列表中。 我希望jQuery只将类添加到第一级(ul> li.class)而不是内部子级(ul> li> ul> li.class)
谢谢
这应该工作:
$("#divId ul:first > li:odd").addClass("blue"); $("#divId ul:first > li:even").addClass("green");
它会将类添加到divId中找到的第一个ul标记的子级。
你可以尝试:
$("#divId ul li:not(#divId ul li ul li):odd").addClass("blue"); $("#divId ul li:not(#divId ul li ul li):even").addClass("green");
我将在这里使用假设,你知道他们对他们的看法;)
如果要为所有ul项添加特定类,则:
$('ul').addClass('class-addition');
并且您可以以相同的方式设置列表项的样式。
如果你想在li中添加类到ul,你可以使用:
$('li > ul').addClass('class-addition');
使用父>子选择器。
我将看看Branislav提供的选择器文档,以准确找到您想要的内容并使用firebug来测试结果。
请您提供更多有关您案件的信息。 从我看到你需要简单的选择和添加类。 您可以在此处找到有关jquery选择器的信息,也可以在此处找到addClass方法