jQuery: как выбрать все дочерние элементы после n-го дочернего элемента и поместить в новый элемент?

#javascript #jquery

#javascript #jquery

Вопрос:

У меня большой список <li> s. Я хочу выбрать все <li> s после 20-го экземпляра и обернуть их в элемент.

Я просто не уверен, как собрать все <li> s после 20.

Я пробовал :gt(20) и .slice(20) безуспешно.

Кто-нибудь знает, как я мог бы этого добиться?

Пока у меня есть:

 $(document).ready(function() {
    $('.js-long-menu').each(function( index ) {
        var itemLength = $(this).find('li').length;

        if(itemLength >= 20){
            var extraItems = $(this).find('li:gt(20)').html();
            $(this).parent().append("<div class='col-md-2'>"   extraItems   "</div>");
        }
    });
});
  

Ответ №1:

@MeltingDog Попробуйте это

 $(document).ready(function() {
    $('.js-long-menu').each(function() {
        var itemLength = $(this).find('li').length;
        for(i=20;i<itemLength;i  )
        {
            var extraItems = $(this).find('li').eq(i);
            $(this).parent().append("<div class='col-md-2'>"   extraItems   "</div>");
        }
    });
});