首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >不带jQuery的.html()和.append()

不带jQuery的.html()和.append()
EN

Stack Overflow用户
提问于 2011-05-26 16:57:51
回答 5查看 47.5K关注 0票数 43

谁能告诉我不用jQuery怎么使用这两个函数?

我使用的是一个预编码的应用程序,我不能在其中使用jQuery,我需要从一个div中取出HTML,然后使用JS将其移动到另一个div中。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-05-26 17:02:19

要将HTML从一个div复制到另一个div,只需使用DOM即可。

代码语言:javascript
复制
function copyHtml(source, destination) {
  var clone = source.ownerDocument === destination.ownerDocument
      ? source.cloneNode(true)
      : destination.ownerDocument.importNode(source, true);
  while (clone.firstChild) {
    destination.appendChild(clone.firstChild);
  }
}

对于大多数应用程序,inSameDocument总是会是真的,所以当它是假的时候,你可能可以省略掉所有起作用的部分。如果您的应用程序在同一个域中有多个框架通过JavaScript进行交互,您可能希望将其保留在其中。

如果您想替换HTML,您可以通过清空目标然后复制到其中来实现:

代码语言:javascript
复制
function replaceHtml(source, destination) {
  while (destination.firstChild) {
    destination.removeChild(destination.firstChild);
  }
  copyHtml(source, destination);
}
票数 11
EN

Stack Overflow用户

发布于 2011-05-26 17:04:45

你可以替换

代码语言:javascript
复制
var content = $("#id").html();

使用

代码语言:javascript
复制
var content = document.getElementById("id").innerHTML;

代码语言:javascript
复制
$("#id").append(element);

使用

代码语言:javascript
复制
document.getElementById("id").appendChild(element);
票数 63
EN

Stack Overflow用户

发布于 2016-11-25 21:22:30

晚了几年才参加派对,但不管怎样,这里有一个解决方案:

代码语言:javascript
复制
document.getElementById('your-element').innerHTML += "your appended text";

这对于将html附加到dom元素非常有效。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6136012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档