2011-10-21 95 views
0

我有以下的HTML追加jQuery後插入?

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

基本上我用appendTo(ul)一堆東西附加到這一點,但我想它實際上append第一個孩子後li

我該怎麼做?

我已經試過.appendTo(ul).insertAfter('li:first');

回答

2

你並不需要結合appendToinsertAfter,你可以只使用insertAfter,使選擇更具體:

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

這裏有一個working example

編輯基於評論

我想你的意思是,你已經有了一個變量的ul並想使用它。如果是這樣的話,你可以嘗試這樣的事:

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

下面是一個的example

+0

我使用'ul'作爲'function(ul,item)'的一部分? – Andy

+0

@Andy - 看我的編輯。我想這就是你想要做的。 –

+0

爲什麼嘗試這麼難inserAfter當後會做到一行,一個包裝 – Sinetheta

0
$('ul li:first').after('<li>Some stuff second</li>') 
+0

那會把它放在第一個裏面 – Sinetheta

+0

謝謝..需要之後。 – Jayendra

1

使用後()插入第一個li之後。

$('ul li:first').after('<li>some other stuff</li>'); 
+0

大家都把他們的帽子扔在戒指中,而你是第一個打上標記的人) – Sinetheta

0

我想,你希望:

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

,或者如果ul不是一個變量:

.insertAfter('ul > li:nth-child(1)'); 
+0

如果他提出這樣一個基本問題,我不會假定給他的代碼片段實際上不會工作 – Sinetheta

+0

@Sinetheta:我按照他使用的風格('.appendTo(ul).insertAfter('li:first');'),所以我假設他可以處理這個問題。 –

2

嘗試使用此............. ......

ul>li:first