Javascript 在最后一个子项之前追加

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

我有一个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="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>');
});