我有这个HTML代码:
<div class="rotation">
<ul>
<li><img src="..." alt="" /></li>
<li><img src="..." alt="" /></li>
<li><img src="..." alt="" /></li>
</ul>
</div>
我需要将类添加到ul,我想使用jquery来实现它,因为ul,li是在没有任何类的情况下生成的。
假设ul标签需要<ul class="image_rotation">
。我该怎么办?
答案 0 :(得分:12)
Read about jQuery's addClass
method here.
$('.rotation ul').addClass('image_rotation');
上面的代码会为每个image_rotation
添加一个ul
类,它是类rotation
的任何元素的后代。
如果您只想定位属于ul
的元素的直接子的rotation
,请使用child selector (>
):
$('.rotation > ul').addClass('image_rotation');
如果您只想在一个.rotation
元素上执行此操作,则应该为其指定ID并以此方式选择它。例如:
$('#rotation ul');
和
<div id="rotation" class="rotation">
<ul>
<li><img src="..." alt="" /></li>
<li><img src="..." alt="" /></li>
<li><img src="..." alt="" /></li>
</ul>
</div>
答案 1 :(得分:7)
我建议保持简单:
$('div.rotation ul').addClass('image_rotation');
或者,如果ul
元素中有多个div.rotation
元素,则可以指定第一个ul
:
$('div.rotation ul:first').addClass('image_rotation');
最后ul
:
$('div.rotation ul:last').addClass('image_rotation');
或ul
仲裁从零开始的索引,例如第三个ul
(索引为2
):
$('div.rotation ul:eq(2)').addClass('image_rotation');
或:
$('div.rotation ul').eq(2).addClass('image_rotation');
或直接孩子(因此没有嵌套在任何其他元素中的ul
元素):
$('div.rotation > ul').addClass('image_rotation');
参考文献:
答案 2 :(得分:3)
您需要的只是在div中找到UL并将其分配给您的班级。 您可以在此demo中看到它,但HTML的代码位于
之下$(document).ready(function(){
$('ul','div.rotation').each(function(index){
$(this).addClass('image_rotation');
});
});
答案 3 :(得分:2)
这很简单,只需:
$(document).ready(function(){
$('div.rotation ul').addClass('image_rotation');
});
答案 4 :(得分:2)
$(".rotation ul").attr("class","image_rotation");
答案 5 :(得分:1)
$(".rotation").children("ul").addClass( "MyClass");