jQuery вставить после добавления? - PullRequest
0 голосов
/ 21 октября 2011

У меня есть следующий HTML

<ul>
   <li>Some stuff first<li>
</ul>

В основном я использую appendTo(ul), чтобы добавить к этому кучу вещей, но я хочу, чтобы это действительно append ПОСЛЕ первого ребенка li?

Как я могу это сделать?

Я пробовал .appendTo(ul).insertAfter('li:first');

Ответы [ 5 ]

2 голосов
/ 21 октября 2011

Попробуйте использовать это ...................

ul>li:first
2 голосов
/ 21 октября 2011

Вам не нужно объединять appendTo и insertAfter, вы можете просто использовать insertAfter и сделать селектор более конкретным:

var li = $("<li>New</li>");
li.insertAfter($("ul li:first"));

Вот вам рабочий пример .

Редактировать на основе комментариев

Я думаю, что вы имеете в виду, что у вас уже есть ul в переменной и вы хотели быиспользовать это.Если это так, вы можете попробовать что-то вроде этого:

var li = $("<li>New</li>");
li.insertAfter(ul.children().eq(0));

Вот пример этого.

1 голос
/ 21 октября 2011

Используйте после () для вставки после первого li.

$('ul li:first').after('<li>some other stuff</li>');
0 голосов
/ 21 октября 2011

Полагаю, вы хотите:

.insertAfter($(ul).children().first());
// should work as well:
// .insertAfter(ul.children[0])

или, если ul не является переменной:

.insertAfter('ul > li:nth-child(1)');
0 голосов
/ 21 октября 2011
$('ul li:first').after('<li>Some stuff second</li>')
...