javascript - 为何多次append jQuery对象只有一个dom节点
PHPz
PHPz 2017-04-10 17:36:57
0
2
571

为何必须得clone才能把对象append到dom中
而直接append只能出现一个dom节点,如下

var obj = "

对象

"; var $obj = $(obj); $(obj).appendTo($(".xx")); $(obj).appendTo($(".xx"));
PHPz
PHPz

学习是最好的投资!

全部回覆 (2)
洪涛

因为$obj指向的是同一个dom对象 第二次appendTo 是拿第一次添加到dom树里的$obj移动到新的父节点下 表现的效果是不做任何操作 如果是appendTo其他父节点 则是移动节点

所以需要重新生成新的节点 或者 clone一份节点

    左手右手慢动作

    问题在于appendTo()或者append()方法都是移动DOM 对象,而不是将 DOM 对象复制到你指定的那个地方。

    比如下面这样的 HTML 结构:

    执行这样的 jQuery 脚本:

    var $a = $("#a"), $b = $("#b"), $p = $("p"); $p.appendTo($a);

    HTML 结构就变成了:

    再执行这样的脚本:

    $p.appendTo($b);

    HTML 结构就变成了:

    也就是说,如果你想出现多个

    标签,要么生成多个

    元素,要么克隆多个。

    直接用append()appendTo()方法,如你所见,达不到你想要的效果。

    (以上脚本都没试)

      最新下載
      更多>
      網站特效
      網站源碼
      網站素材
      前端模板
      關於我們 免責聲明 Sitemap
      PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!