【问题标题】:Can i append an already existing div to another already existing div?我可以将一个已经存在的 div 附加到另一个已经存在的 div 吗?
【发布时间】:2012-06-24 12:33:34
【问题描述】:

我有一个不透明度为 0 的 div 中的联系表单,以及一个根据用户在菜单上单击的内容动态操作内容的 div。 在用户进入菜单的最后阶段后,我需要清除显示所有内容的 div 的内容,然后将表单 div “移动”到其中, 像这样的东西会起作用吗?

$('#menu_form').on('click', function() {
    $('#form_div').append('#display_div');
});

所以要回顾 2 个已经存在的 div,需要在点击时将其中一个放入另一个中。

【问题讨论】:

  • 这样的东西会起作用吗?你在问之前有没有尝试过?
  • 我简化了问题中的内容,我需要修改多个函数才能让它使用它,我想知道的是 append 是否将 div 移动到另一个?
  • 但我认为这行不通。您可能必须将其从 DOM 中拉出,然后重新注入。

标签: jquery append


【解决方案1】:

使用.appendTo()

$('#menu_form').on('click', function(){
   $('#form_div').appendTo('#display_div');  // appendTo -> selector
});

使用.append()

$('#menu_form').on('click', function(){
   $('#display_div').append( $('#form_div') ); // append -> object
});

【讨论】:

  • 你好,很好的答案,但似乎 appendTo 将内容“移动”到新的 DIV。至少我通过使用它丢失了源 DIV。
  • @ReddySK 比使用 .clone() 更多信息请参阅 API 文档。
【解决方案2】:

查看this jsFiddle 以获得快速 POC。显然是的。

诀窍是传递对象引用,而不仅仅是对象 id,如下所示:

$('#menu_form').on('click', function(){
    $('#form_div').append($('#display_div'));
});

你也可以传递当前对象,使用this:

$('#menu_form').on('click', function(){
    $('#form_div').append(this);
});

【讨论】:

  • 干杯 ^^ 但 Roko 得到它首先会接受他的,但你得到了一个赞成票,所以 yeeey :P
  • 哈哈哈,我不介意不被录取。 :D 很高兴能提供帮助。
猜你喜欢
  • 2013-06-30
  • 2013-04-04
  • 1970-01-01
  • 1970-01-01
  • 2022-12-17
  • 2022-11-19
  • 1970-01-01
  • 2015-01-24
  • 2012-08-12
相关资源
最近更新 更多