gpt4 book ai didi

javascript - 将 getElementById 用于 [尚未] 在 DOM 中的元素?

转载 作者:数据小太阳 更新时间:2023-10-29 05:24:15 27 4
gpt4 key购买 nike

据我所知,document.getElementById('myId') 只会查找文档中已有的 HTML 元素。假设我通过 JS 创建了一个新元素,但我还没有将它附加到文档主体,是否有一种方法可以像我通常使用 getElementById 那样通过它的 id 访问这个元素?

var newElement = document.createElement('div');
newElement.id = 'myId';
// Without doing: document.body.appendChild(newElement);
var elmt = document.getElementById('myId'); // won't work

有解决办法吗?(我必须告诉我,我不想存储对这个特定元素的任何引用,这就是为什么我需要通过它的 Id 访问它)

谢谢!

最佳答案

如果它不是文档的一部分,则无法使用 document.getElementById 获取它。 getElementById 执行 DOM 查找,因此该元素必须在要找到的树中。如果您创建一个 float DOM 元素,它仅存在于内存中,并且无法从 DOM 访问。它必须添加到 DOM 才能可见。

如果您稍后需要引用该元素,只需将引用传递给另一个函数——JavaScript 中的所有对象都是通过引用传递的,因此从另一个函数中处理 float DOM 元素会修改原始元素,而不是副本。

关于javascript - 将 getElementById 用于 [尚未] 在 DOM 中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1077139/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com