jQuery - 仅当length大于5时才将类添加到最后2个元素

时间:2015-04-24 03:45:48

标签: jquery

如何将CSS类添加到最后2个var texture = new THREE.ImageUtils.loadTexture('panel.png'); texture.wrapS = THREE.RepeatWrapping; texture.wrapT = THREE.RepeatWrapping; texture.repeat.set( 1, 1 ); var loader = new THREE.JSONLoader(); loader.load( 'panel.json', function ( geometry ) { model = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial( {map: texture} ) ); scene.add( model ) } ); 元素,只有父<li>具有 5 <ul> 元素

  

HTML

<li>
  

的jQuery

<div id="mymenu">
    <ul>
        <li>Item 1</li>
        <li>Item 2</li>
        <li>Item 3</li>
        <li>Item 4</li>
        <li>Item 5</li>
        <li>Item 6</li>
    </ul>
</div>

FIDDLE

3 个答案:

答案 0 :(得分:2)

您可以使用以下方式对孩子进行统计:

$('#mymenu ul').children().length

基本上是:

if($('#mymenu ul').children().length > 5)
    $('#mymenu ul li:last-child').prev('li').andSelf().addClass("red");

答案 1 :(得分:1)

在添加类

之前,只需添加if语句来检查li的长度/总数
if($('#mymenu ul li').length > 5)
    $('#mymenu ul li:last-child').prev('li').andSelf().addClass("red");

FIDDLE

答案 2 :(得分:1)

您可以使用条件方法

//cache the lis since we need to use it again
var $lis = $('#mymenu ul li');
//check if there are more than 5 elements
if ($lis.length > 5) {
    //if so get the last 2 elements and add the class
    $lis.slice(-2).addClass("red");
}

演示:Fiddle