如何根据我正在读取的节点的元素名称创建元素

How can I create an element based on the element name of the node I’m reading?

本文关键字:元素 节点 创建 读取 何根      更新时间:2023-11-05
var div = document.getElementById("foo");
for(loop = 0; loop < div.childNodes.length; loop++)
{
    document.createElement(div.childNodes[0]); // this isn't possible
}

我想根据我正在读取的节点的类型创建一个元素。像这样:

if(div.childNodes[0] == "a")  // this isn't possible
    document.createElement("a");

>createElement需要一个字符串参数作为元素名称。尝试

document.createElement(div.childNodes[loop].tagName)

见 https://developer.mozilla.org/en-US/docs/Web/API/Element.tagName

您可以使用

elem.tagNameelem.nodeName来获取元素 HTML 名称并在需要时创建它。

只需使用tagName

document.createElement(div.childNodes[0].tagName);