Javascript 在最后一个子项之前追加
我有一个ID为Javascript 在最后一个子项之前追加,javascript,jquery,html,append,Javascript,Jquery,Html,Append,我有一个ID为wrapper的div,我正在使用.append()在该div的末尾插入一些内容,如下所示: $("#wrapper").append('<div class="content"><div class="subcontent">Some stuff</div></div>'); <div id="wrapper"> <div class="content"> <div class
wrapper
的div,我正在使用.append()
在该div的末尾插入一些内容,如下所示:
$("#wrapper").append('<div class="content"><div class="subcontent">Some stuff</div></div>');
<div id="wrapper">
<div class="content">
<div class="subcontent">
First
</div>
</div>
<div class="content">
<div class="subcontent">
Second
</div>
</div>
</div>
我想在最后一个元素之前插入一个元素,因此得到以下结果:
<div id="wrapper">
<div class="content">
<div class="subcontent">
First
</div>
</div>
<div class="content">
<div class="subcontent">
Third
</div>
</div>
<div class="content">
<div class="subcontent">
Second
</div>
</div>
</div>
弗斯特
第三
第二
如何执行此操作?使用
:last of type
选择最后一个元素,并使用before()
附加新元素:
$('.content:类型的最后一个')。在('test')之前代码>
.new{color:red}
弗斯特
第二
您可以使用insertBefore()
:
您可以使用在元素之前添加同级:
$("#wrapper .content:last").before('<div class="content"><div class="subcontent">Third</div></div>');
弗斯特
第二
$(“Test”).insertBefore(“#wrapper>div:last child”);
在之前使用插入:
$('<div class="content"><div class="subcontent">Some stuff</div></div>').insertBefore('#wrapper > div:last');
$('#wrapper > div:last').before('<div class="content"><div class="subcontent">Some stuff</div></div>');
$('<div class="content"><div class="subcontent">Third</div></div>').insertBefore('#wrapper .content:last');
$('Third').insertBefore('wrapper.content:last');
在目标之前插入匹配元素集中的每个元素
演示:您可以选择最后一项,并添加
$(“#wrapper.content”).last().before('Some stuff')代码>
弗斯特
第二
我就是这样到达那里的:
var htmlString='Some stuff';
$(htmlString).insertBefore('.content div:last');
您可以使用第n个最后一个子项选择最后第二个div。
小提琴:
html:
弗斯特
第二
javascript:
$(document).ready(function(){
$("#wrapper div:nth-last-child(2)").append('<div class="content"><div class="subcontent">Some stuff</div></div>');
});
$(文档).ready(函数(){
$(“#wrapper div:nth last child(2)”).append('Some stuff');
});
您可以这样做
$(“#wrapper.content:last”).before(“一些东西”);
看看小提琴这是你想要的吗?我会试着做一个决定jsfiddle@Boxiom现在它起作用了吗?我刚刚更改了您的div id及其工作方式。这将作为子级而不是同级插入。这将创建同级
var htmlString = '<div class="subcontent">Some stuff</div>';
$(htmlString).insertBefore('.content div:last');
<div id="wrapper">
<div class="content">
<div class="subcontent">
First
</div>
</div>
<div class="content">
<div class="subcontent">
Second
</div>
</div>
</div>
$(document).ready(function(){
$("#wrapper div:nth-last-child(2)").append('<div class="content"><div class="subcontent">Some stuff</div></div>');
});