javascript - `document.body.appendChild(elem);` 附加到 html 正文的末尾。如何放置在 body 的特定位置?

标签 javascript html dom

The following code按下 push 按钮时,在 Hey girls! 段落之后创建一个文本输入字段:

<html>
<head>
<script>
function func()
{
var elem=document.createElement("input");
document.body.appendChild(elem);
elem.setAttribute('type','text');
}
</script>
</head>
<body>
<p>Hey guys!<p>
<input type="button" value="push" onclick="func()"/>
<script>
func();
</script>
<p>Hey girls!<p>
</body>
</html>

如何确保在 Hey girls! 段落之前和 Hey girls! 段落之后创建文本输入字段?

最佳答案

这是 HTMLElement.prototype.insertBefore 的工作。

概要:parentElement.insertBefore(newElement,referenceElement);

示例:

document.body.insertBefore( elem, document.getElementsByTagName('p')[1] );

由于您的段落节点没有任何 ID类名,我只是使用 .getElementsByTagName 引用它。如果您有更准确的查询可能性,事情就会变得更容易。

引用号:https://developer.mozilla.org/en-US/docs/DOM/Node.insertBefore

关于javascript - `document.body.appendChild(elem);` 附加到 html 正文的末尾。如何放置在 body 的特定位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12682053/

相关文章:

javascript - 为什么这个 javascript 无法正确分配 .cells[]?

javascript - 对此感到困惑 - 出现错误 "this.myfuntion() is not a function"

javascript - 在 Bootstrap timepicker 中更改小时格式

javascript - 在 React Google Maps 中创建自定义按钮

javascript - 阻止禁用元素更改页面大小?

html - 限制元素上径向渐变的大小

html - Bootstrap 按钮组始终水平对齐

javascript - 无法使用document.getElementById捕获div的值

java - 如何防止将 XML 解析错误写入 System.err (stderr)?

javascript - 隐藏系列而不隐藏 y 轴