在jquery中查找next()。next()的替代方法是什么?

时间:2013-04-08 08:55:57

标签: jquery

我想更改选择器旁边的元素的css属性。

我使用了这种语法

$('#hide').next().next().css('display', 'block');

但我认为可以使用其他更好的方法,例如find()eq()

<li class="expandable">
    <div class="hitarea collapsable-hitarea"></div>
    <div id="hide" class="hide"></div>
    <a href="#" class=""> <strong>Stitched</strong> </a>

    <ul style="display: none;" id="hi">
        <li> <a href="#"> Hand Block Print </a> 
        </li>
        <li> <a href="#"> Designer </a> 
        </li>
        <li class="last"> <a href="#"> Screen Printed </a> 
        </li>
    </ul>
</li>

2 个答案:

答案 0 :(得分:17)

你可以尝试

  $('#hide').nextAll().eq(1).css('display', 'block');

nextAll()返回 all 下一个元素,eq(1)返回其中的第二个元素。

答案 1 :(得分:3)

尝试使用.siblings选择器:

$('#hide').siblings("ul").css('display', 'block');

或者通过索引:

$('#hide').siblings("ul").eq(0).css('display', 'block');

Example jsFiddle