除第一和第二之外如何选择LI?

时间:2010-05-05 12:30:44

标签: jquery html css

这是内容的结构,我想选择除前两个之外的所有LI(即无链接)

jQuery(document).ready(function(){

  var nosubnav = jQuery('.first-level li:not(:has(ul))');
  var nosubnavsize = jQuery('.first-level li:not(:has(ul))').size();
  jQuery(nosubnav).css('border' , '1px solid red');
  alert('List item which does not have submenu  '+nosubnavsize);

});

div class="navigation-container">
    <ul class="first-level">
    <li><a href="#">No Link</a></li>
    <li><a href="#">No Link</a></li>
      <li><a href="#">Link 1</a></li>
      <li><a href="#">Link 2</a>
        <ul>
          <li><a href="#">Link2.1</a></li>
          <li><a href="#">Link2.2</a>
            <ul>
                <li><a href="#">Link 2.2.1</a></li>
            </ul>
          </li>
        </ul>
      </li>
      <li><a href="#">Link </a></li>
    </ul>  
  </div>

相关问题:How to count li which does not have ul?

3 个答案:

答案 0 :(得分:9)

$("ul.first-level > li:gt(1)").hide()

我假设您正在谈论顶级级别的LI,即.first-level的直接后代。否则,您可以省略父子选择器(>)。

http://api.jquery.com/gt-selector/

答案 1 :(得分:0)

li + li + li, ul ul li

即。位于项目旁边的项目旁边的项目,或列表中位于列表内的项目。

答案 2 :(得分:0)

只需给前两个li一个css级(例如“noLink”)并使用

$("li:not('.noLink')").hide(); //or whatever