Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查找未附加到文档的元素_Javascript_Dom_Svg_Getelementbyid_Getelementsbytagname - Fatal编程技术网

Javascript 查找未附加到文档的元素

Javascript 查找未附加到文档的元素,javascript,dom,svg,getelementbyid,getelementsbytagname,Javascript,Dom,Svg,Getelementbyid,Getelementsbytagname,总之 由createElement和/或createElements创建的元素在创建时不会附加到主文档对象,因此在附加到主DOM树之前,我无法使用document.getElementById查找它们 是否有一种有效的方法“获取”脱离主DOM树的节点 详细说明: 我正在编写动态生成SVG图的代码,在以后的某个时间点之前,我无法将它们嵌入到主文档中。这些图表相当复杂,我有各种各样的功能,每个功能都设计了图表的一部分。这些函数中的每一个都需要能够找到主SVG对象的正确元素,以便将这些元素按正确的顺序

总之

createElement
和/或
createElements
创建的元素在创建时不会附加到主文档对象,因此在附加到主DOM树之前,我无法使用
document.getElementById
查找它们

是否有一种有效的方法“获取”脱离主DOM树的节点

详细说明:

我正在编写动态生成SVG图的代码,在以后的某个时间点之前,我无法将它们嵌入到主文档中。这些图表相当复杂,我有各种各样的功能,每个功能都设计了图表的一部分。这些函数中的每一个都需要能够找到主SVG对象的正确元素,以便将这些元素按正确的顺序排列。如果我可以从主SVG节点调用
getElementById
,那就太好了,但是我不能,因为它不是
文档

因此,我一直在解析由
getElementsByTagName
返回的数组,并寻找目标id。或者,我可以在主文档中创建一个不可见的
div
,并将其附加到主文档中,但我希望我的代码可以重用,并且不绑定到特定的HTML页面


我可以有多个
文档
对象吗?比如说,在我可以构建自己的DOM(如视频缓冲区)的地方,没有显示一个临时的DOM。

您可以使用
querySelector
querySelectorAll
为什么在准备将这些对象添加到真正的DOM之前,您不使用一个存储对象甚至二级documentFragment来保存这些对象?使用documentFragment,您甚至可以使用查询选择器来查找它们。
documentFragment
正是我要查找的!