根据li标签的数量添加不同的类

时间:2014-09-22 12:30:31

标签: jquery css css3

要求是,如果我有两个以上(li)标签,则在ul标签上应用“col_3”类,否则它应该是“col_2”类

实施例: 如果有两列

<div class="container">
   <ul class="col_2">
    <li>One</li>
    <li>Two</li>
   </ul>
</div>

实施例: 如果有两列以上

<div class="container">
   <ul class="col_3">
    <li>One</li>
    <li>Two</li>
    <li>three</li>
    <li>four</li>
    <li>five</li>
    <li>six</li>
    <li>seven</li>
    <li>eight</li>
    <li>nine</li>
   </ul>
</div>

2 个答案:

答案 0 :(得分:3)

使用:

if($('.container li').length>2){
   $('.container ul').addClass('col_3');
}else{
   $('.container ul').addClass('col_2');
} 

答案 1 :(得分:1)

试试这个:迭代所有ul,然后相应地应用类

//remove all classes first

$('.container ul').removeClass('col_2 col_3');

//iterate all container and apply class
$('.container').each(function(){
   if($(this).find('li').length >2)
     $(this).find('ul').addClass('col_3');
   else
     $(this).find('ul').addClass('col_2');
});