Javascript 如何停止将动态内容追加到内容末尾?

Javascript 如何停止将动态内容追加到内容末尾?,javascript,Javascript,我试图编写一些JavaScript,一旦页面完成加载,就会在页面所在的位置创建一个div 下面是代码的精简版本 window.addEventListener('load', function () { var content = document.createElement('div'); content.id = 'div-ID'; document.getElementsByTagName('body')[0].appendChild(content);

我试图编写一些JavaScript,一旦页面完成加载,就会在页面所在的位置创建一个div

下面是代码的精简版本

window.addEventListener('load', function () {
    var content = document.createElement('div');
    content.id = 'div-ID'; 
    document.getElementsByTagName('body')[0].appendChild(content);      
});
它在
addEventListener()
之外工作,但是,在事件侦听器内部时,它总是将创建的div放在页面内容其余部分的下方,而不是放置
标记的位置

我确信问题与这条线有关

document.getElementsByTagName('body')[0].appendChild(content);
我需要一个替代版本,它不会
appendChild()
,但我的JS没有那么好,我尝试过的所有东西都没有用

这很可能很容易实现,我尝试过搜索Google和Stack Overflow,但我的搜索词似乎没有产生想要的结果

如果您能在这方面提供任何帮助,我们将不胜感激

因此,您的代码类似于:

document.body.insertBefore( content, document.body.childNodes[0] );
第二个参数是referenceNode,它有以下注释:

referenceNode不是可选参数——必须显式传递节点或null。未能提供或传递无效值可能在不同的浏览器版本中表现不同


可能重复的嗨,谢谢你的评论我会看一看并试一试,因为我说过我搜索过谷歌,所以没有发现任何与我所寻找的相匹配的东西,也许我的搜索词不正确。你可能需要对答案进行一些思考,以使其适合你的情况——不太可能有一个可复制粘贴的解决方案。例如,您收到的这个问题的答案要求您确定插入内容的位置,如果不是在末尾,或者在开头,那么在哪里?答案将指导将什么作为
referenceNode
参数。感谢您的回答,我不希望有复制粘贴解决方案。在回答“找出要插入内容的位置”问题时,我只想将内容插入脚本标记所在的位置,而不想附加到现有的DOM元素。这就是问题所在,我找不到任何有帮助的方法。我确实试着按照你在链接中的建议去做,但还是没用嗨,谢谢你的建议。我尝试了这个方法,但是,内容现在位于页面内容之上,即页眉之上,而不是页眉和页脚之间。@StuartMoir如果您想在现有结构中进行编辑并将节点放置在何处,可能更容易获得帮助。现在,请阅读我提供给您的链接中的文档,并检查referenceNode(第二个参数)的实际功能。很可能您在加载事件中仍然需要它:)谢谢您的响应。我无法从文档中找到它,我只想在脚本标记所在的位置插入内容,我不想附加到现有的DOM元素。