Как найти первый элемент, который скрыт JQuery - PullRequest
6 голосов
/ 14 декабря 2008

Я хочу показать первый элемент, который скрыт jquery. мой HTML-код:

<ol>
    <li>1</li>
    <li style="display:none">2</li>
    <li style="display:none">3</li>
    <li style="display:none">4</li>
    <li style="display:none">5</li>
    <li><a class="add">Add More ...</a></li>
</ol>

Я хочу показать первый скрытый LI, каждый раз, когда нажимался элемент «a» Мое решение ниже. но я думаю, что лучший способ существует.

$("a.add").click(function(){
        var hiddens=$(":hidden",$(this).parent().parent());
        if (hiddens.length>0)
        {
            hiddens.each(function(index,el){
                if(index==0)
                {
                    $(this).slideToggle("fast");
                }
            });
        }

        if (hiddens.length==1)
        {
            $(this).parent().hide();
        }

Tanx

Ответы [ 3 ]

12 голосов
/ 14 декабря 2008

Просто добавьте: первый селектор после того, как вы получите: скрытый набор, чтобы вы получили первый элемент из набора, найденный: скрытым селектором

$("a.add").click(function(){
    $(":hidden:first").slideToggle("fast");
});
2 голосов
/ 14 декабря 2008

Вот решение:

$("a.add").click(function(){
    $(":hidden:first").show();
});
0 голосов
/ 15 декабря 2008

Спасибо "Эфир": После вашего ответа я нашел следующие решения:

$(":hidden:eq(0)",$(this).parent().parent())

OR

$(":hidden:lt(1)",$(this).parent().parent())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...