我有以下的HTML追加jQuery后插入?
<ul>
<li>Some stuff first<li>
</ul>
基本上我用appendTo(ul)
一堆东西附加到这一点,但我想它实际上append
第一个孩子后li
?
我该怎么做?
我已经试过.appendTo(ul).insertAfter('li:first');
我有以下的HTML追加jQuery后插入?
<ul>
<li>Some stuff first<li>
</ul>
基本上我用appendTo(ul)
一堆东西附加到这一点,但我想它实际上append
第一个孩子后li
?
我该怎么做?
我已经试过.appendTo(ul).insertAfter('li:first');
你并不需要结合appendTo
和insertAfter
,你可以只使用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。
使用后()插入第一个li之后。
$('ul li:first').after('<li>some other stuff</li>');
大家都把他们的帽子扔在戒指中,而你是第一个打上标记的人) – Sinetheta
我想,你希望:
.insertAfter($(ul).children().first());
// should work as well:
// .insertAfter(ul.children[0])
,或者如果ul
不是一个变量:
.insertAfter('ul > li:nth-child(1)');
如果他提出这样一个基本问题,我不会假定给他的代码片段实际上不会工作 – Sinetheta
@Sinetheta:我按照他使用的风格('.appendTo(ul).insertAfter('li:first');'),所以我假设他可以处理这个问题。 –
尝试使用此............. ......
ul>li:first
我使用'ul'作为'function(ul,item)'的一部分? – Andy
@Andy - 看我的编辑。我想这就是你想要做的。 –
为什么尝试这么难inserAfter当后会做到一行,一个包装 – Sinetheta