【问题标题】:How to append element after the body tag?如何在body标签后追加元素?
【发布时间】:2018-04-22 15:37:05
【问题描述】:

这就是我想要的。 我希望新创建的元素附加在 body 标记之后。不在 body 标记内。

谢谢。

【问题讨论】:

  • 这不是代码工厂。你能告诉我们你尝试了什么吗?
  • 这是你真的不应该做的事情。但理论上,你可以打电话给document.appendChild()。但是,同样,你不应该。页面上的所有内容都应该在正文中;将内容放在其外部可能会导致在不同浏览器中出现不可预测的行为。
  • 我试过了,document.appendChild() 但它不起作用。
  • @N.Jadhav :这将附加到正文标签。
  • 如果不是document.appendChild()那么应该有document的一些属性对应HTML标签(可能是documentElement),所以如果你需要可以调用appendChild() ;尝试研究window.document。不过,我真诚地建议您重新考虑您的 CSS,但这是您的决定。

标签: javascript html


【解决方案1】:

您可以使用document.documentElement 进行追加。

document.documentElement.appendChild(new_div);

这就是 <html> 元素在 DOM 中的表示方式。


这不会一定直接放在body 之后。如果需要,您可以使用.insertBefore 而不是.appendChild。

document.documentElement.insertBefore(new_div, document.body.nextSibling);

或者你可以使用.insertAdjacentElement。

document.body.insertAdjacentElement("afterend", new_div);

如果您在 JS 中使用 HTML 标记创建新元素,则可以使用 .insertAdjacentHTML。

document.body.insertAdjacentHTML("afterend", "<div>...</div>");

【讨论】:

    【解决方案2】:

    你可以用这个

    var div = document.createElement("DIV");
    div.id = "id";
    div.innerHTML = "1223";
    document.body.parentNode.insertBefore(div, document.body.nextSibling);
    

    【讨论】:

      猜你喜欢
      • 2018-10-30
      • 1970-01-01
      • 1970-01-01
      • 2011-08-21
      • 1970-01-01
      • 2018-06-30
      • 2017-01-18
      • 1970-01-01
      • 2016-03-31
      相关资源
      最近更新 更多