我有这样的代码:
<div id="header">
<ul class="tabs">
<li><a href="/user/view"><span class="tab">Profile</span></a></li>
<li><a href="/user/edit"><span class="tab">Edit</span></a></li>
</ul>
</div>
我想使用jQuery添加以下到列表:
<li><a href="/user/messages"><span class="tab">Message Center</span></a></li>
我试了一下:
$("#content ul li:last").append("<li><a href="/user/messages"><span class="tab">Message Center</span></a></li>");
但是这会在最后一个li中(就在结束标记之前)添加新的li,而不是在最后一个li之后。加上这个li的最好方法是什么?
jQuery提供了以下选项,可以满足您在这种情况下的需求:
Append用于在选择器中指定的父div的末尾添加一个元素:
$('ul.tabs').append('<li>An element</li>');
Prepend用于在选择器中指定的父div的顶部/开头添加一个元素:
$('ul.tabs').prepend('<li>An element</li>');
insertAfter允许在指定的元素之后插入所选的元素。你创建的元素将被放在DOM中指定的选择器结束标记之后:
$('<li>An element</li>').insertAfter('ul.tabs>li:last');
will result in:
<li><a href="/user/edit"><span class="tab">Edit</span></a></li>
<li>An element</li>
insertBefore将做与上面相反的事情:
$('<li>An element</li>').insertBefore('ul.tabs>li:last');
will result in:
<li>An element</li>
<li><a href="/user/edit"><span class="tab">Edit</span></a></li>