jQuery:在兄弟姐妹之后追加到底部

时间:2013-11-27 16:22:11

标签: jquery performance

是否有一种比下面更有效的方法,可以附加到元素的同一级别的底部,而不首先选择父项。这是我的意思的一个例子:http://jsfiddle.net/8cEjw/

如果我有以下结构:

HTML

<div>
    <div id="main"></div>
</div>

的jQuery

$('#main')
    .parent()
        .append($('<a>Test 1</a>').on('click', function (e) {
            alert('Test 1')
        }))
        .append($('<a>Test 2</a>').on('click', function (e) {
            alert('Test 2')
        }));

然后我想知道'appendToBottomAfterSibling'是否有jQuery等价物?如果我没有.parent(),而我的.append()成为.after()s,那么它们会以相反的顺序显示;因为大概是.after()会在元素之后立即附加元素。

1 个答案:

答案 0 :(得分:2)

修改根据JSPerf results,以下比OP更慢 2个数量级


您可以.siblings使用.after,然后使用(Fiddle)。 (我不确定那会更有效率。)

.siblings().last()

.addBack

(注意,如果“#main”可能是唯一的兄弟,那么您可以使用Fiddle将其包含在选择器中:$('#main').siblings().last().after( $("<a>Test1</a>") ... - {{3}})