6

我有这个 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">. 我该怎么做?

4

6 回答 6

14

在此处阅读有关 jQuery 的addClass方法。

$('.rotation ul').addClass('image_rotation');

上面的代码将为image_rotation每个ul元素的后代添加一个类rotation

如果您只想定位作为类的元素的直接子ul元素的 s ,请使用子选择器 ( )rotation>

$('.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>
于 2012-07-05T15:00:12.493 回答
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');

参考:

于 2012-07-05T15:00:27.380 回答
4

您只需要在 div 中找到 UL 并将其分配给您的班级。您可以在此演示中看到它,但您的 HTML 代码如下

$(document).ready(function(){
    $('ul','div.rotation').each(function(index){
        $(this).addClass('image_rotation');
    });
});​
于 2012-07-05T15:03:26.780 回答
1
$(".rotation ul").attr("class","image_rotation");
于 2012-07-05T15:07:04.227 回答
1

这很容易,只需执行以下操作:

$(document).ready(function(){
    $('div.rotation ul').addClass('image_rotation');
});
于 2012-07-05T15:00:26.227 回答
0
$(".rotation").children("ul").addClass( "MyClass");
于 2012-07-05T15:00:26.007 回答