代码
这段代码生成完整的HTML文档,包括所有的HTML标签。
如果parentNode是
var txt = '<div id="hi">fe</div><div id="h2">fe</div><div id="hj">fe</div>'
var parser = new DOMParser();
var temp_node = parser.parseFromString(txt, "text/html").documentElement;
console.log(temp_node)
这段代码生成完整的HTML文档,包括所有的HTML标签。
<html><head></head><body>
<div id="hi">fe</div>
<div id="h2">fe</div>
<div id="hj">fe</div>
</body></html>
如果我只想要<div id="hi">fe</div><div id="h2">fe</div><div id="hj">fe</div>
这部分怎么办?我该如何操作?
另外,如果我想要追加所有节点,是否有一种方法可以不用循环实现?
parentNode.appendChile(temp_node) // add the entire code
parentNode.appendChile(temp_node.firstElementChild.nextElementSibling) // add the parent <body> and the other layers inside
parentNode.appendChild(temp_node.firstElementChild.nextElementSibling.childNodes) // doesn't do the trick, it complains about not being a "node", I guess I'd need an "appendChilds" function that allows to add many nodes at once
如果parentNode是
<div id="parent">
,那么我希望...<div id="parent">
<div id="hi">fe</div>
<div id="h2">fe</div>
<div id="hj">fe</div>
</div>
但我得到的是
<div id="parent">
<body>
<div id="hi">fe</div>
<div id="h2">fe</div>
<div id="hj">fe</div>
</body>
</div>
temp_node.querySelector("body").innerHTML
。 - davcs86temp_node.childNodes[1].childNodes
(不带索引) - davcs86