0

假设我们有一个名为“slide_down_div”的 div,其中包含两个 ul(lists)。我想做出以下选择:

  1. $('#slide_down_div ul:eq(0)'); 和第二个..
  2. $('#slide_down_div ul:eq(1)'); 我需要你的帮助

现在,在第二个语句中,我还想选择第一个和第五个 li(列表项)以便对它们应用一些样式......有没有办法?请建议。

此外,请告诉我是否可以将上述两个 jquery 语句合并为一个。

<ul>
    <li><img src='images/WindowsLogo.png'/>Windows</li>
    <li><img src='images/OfficeLogo.png'/>Office</li>
    <li><img src='images/OfficeLogo.png'/>Xbox</li>
    <li><img src='images/PhoneLogo.png'/>Windows Phone</li> 
    <li><img src='images/IELogo.png'/>Internet Explorer</li>
    <li><img src='images/logo_skype.png'/>Skype</li>
</ul>   

<ul>
    <li>For Home</li>
    <li>Security Essentials</li>
    <li>Microsoft Update</li>
    <li>PC Hardware</li>
    <li>PC Gaming</li>
    <li>For Work</li>
    <li>Small &amp; Medium Businesses</li>
    <li>IT Specialist Locator</li>
    <li>Enterprise</li>
    <li>Server &amp; Tools</li>
</ul>
4

3 回答 3

1
var $first = $('#slide_down_div ul:first'); 
var $second = $('#slide_down_div ul:eq(1)');
$second.find('li:eq(0), li:eq(4)').foo()

var $both = $('#slide_down_div').find('ul:first, ul:eq(1)')

演示

:lt()选择器:

var $both = $('#slide_down_div ul:lt(2)')

演示

于 2012-08-11T12:49:49.020 回答
0

您想<li/>为每个添加第一个和最后一个 CSS 类<ul/>吗?

<div id="slide_down_div">
    <ul class="test">
        ...
    </ul>
    <ul class="test">
        ...
    </ul>
</div>
<script type="text/javascript">
    $(document).ready(function () {
        $('#slide_down_div').find('ul.test').each(function () {
            $(this).find('li:eq(0), li:eq(4)').addClass('TestClass');
            //Or
            $(this).find('li:first, li:last').addClass('TestClass');
        });
    });
</script>
于 2012-08-11T12:57:00.600 回答
0

获取第一个li中的两个第一个元素ul

var first = $("#slide_down_div ul:eq(0) li:lt(2)")​​​​​​​​​​​​​​​​​;

获取第二个中的第一个和第五个li元素ul

var second = $("li:eq(0), li:eq(4)", "#slide_down_div ul:eq(1)");

将两者连接到一个选择器

var both = first.add(second);

小提琴

于 2012-08-11T12:59:51.793 回答