prepend() 和 prependTo() 之间的区别

Difference between prepend() and prependTo()

本文关键字:区别 之间 prepend prependTo      更新时间:2023-09-26

我无法理解prepend()和prependTo()之间的区别。 有人可以帮助我理解其中的区别吗?

它实际上只是为了链接。

x.prependTo(y)

将在x前面附加到y并返回原始集合x

y.prepend(x)

还将在x前面附加到y但将返回原始集合y

根据

jQuery 文档prepend

.prepend().prependTo() 方法执行相同的任务。主要区别在于语法,具体而言,在于内容和目标的位置。对于.prepend(),方法前面的选择器表达式是内容插入的容器。另一方面,使用 .prependTo() 时,内容位于方法之前,作为选择器表达式或动态创建的标记,并将其插入到目标容器中。


一些例子:

prepend示例 1

<div id="a">
    <p>a</p>
</div>
<div id="b">
    <p>b</p>
</div>
<script>
    $('#a').prepend('#b');
</script>

结果*:

<div id="a">
    #b
    <p>a</p>
</div>
<div id="b">
    <p>b</p>
</div>

这是因为prepend将字符串视为 HTML 内容而不是选择器

prepend示例 2

<div id="a">
    <p>a</p>
</div>
<div id="b">
    <p>b</p>
</div>
<script>
    $('#a').prepend($('#b'));
</script>

结果在:

<div id="a">
    <div id="b">
        <p>b</p>
    </div>
    <p>a</p>
</div>

prependTo示例 3

<div id="a">
    <p>a</p>
</div>
<div id="b">
    <p>b</p>
</div>
<script>
    $('#a').prependTo('#b');
</script>

结果*:

<div id="b">
    <div id="a">
        <p>a</p>
    </div>
    <p>b</p>
</div>

* 这些示例中的空格将是错误的,以使代码可读

直接从

文档中复制

.prepend() 和 .prependTo() 方法执行相同的任务。这 主要区别在于语法具体,在 内容和目标。使用 .prepend(),选择器表达式 方法前面是内容所在的容器 插入。另一方面,使用 .prependTo(),内容在 该方法,作为选择器表达式或作为在 上创建的标记 苍蝇,并将其插入目标容器中。

这基本上是说

ElementWhereIWantToAppendTo.prepend(This Is The Content That Is Added)
ElementIWantToAdd.prependTo(This Is Where I add The Content)