我要添加< li>在特定位置,例如:
<ul id="list"> <li>Position 1</li> <li>Position 2</li> <li>Position 4</li> <ul>
假设我要添加一个新的< li>以下/后< li>位置2< / li> ;,我该如何使用jQuery? 我试图这样做使用下面的代码:
$('#list li:eq(1)').append('<li>Position 3</li>');
但是,它没有工作,因为它追加< li>在< li>位置2< / li>内,而不是添加< li>在< li>位置2< / li>下方/下方。
有人可以给我一些帮助吗?
谢谢。
解决方法
你必须使用
after()
而不是append():
Description: Insert content,specified by the parameter,after each element in the set of matched elements.
$('#list li:eq(1)').after('<li>Position 3</li>');
append()的文档清楚地说:
Insert content (…) to the end of each element.
为了完整性:
注意:eq(n)匹配匹配元素集的第n个元素,而:nth-child(n)
匹配父代的第n个子元素。