繁体   English   中英

向class添加类 - jquery

[英]add class to children - jquery

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

在这里阅读jQuery的addClass方法。

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

上面的代码将为每个ul添加一类image_rotation ,它是具有类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>

我建议保持简单:

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

或者,如果div.rotation元素中有多个ul元素,则可以指定第一个ul

$('div.rotation ul:first').addClass('image_rotation');

最后一个ul

$('div.rotation ul:last').addClass('image_rotation');

或者是ul of arbitray从零开始的索引,例如第三个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');

参考文献:

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

$(document).ready(function(){
    $('ul','div.rotation').each(function(index){
        $(this).addClass('image_rotation');
    });
});​

这很简单,只需:

$(document).ready(function(){
    $('div.rotation ul').addClass('image_rotation');
});
$(".rotation ul").attr("class","image_rotation");
$(".rotation").children("ul").addClass( "MyClass");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM