我有以下字符串:
var str = ‘<script type="text/javascript" src="js/test.js"></script><link rel="stylesheet" type="text/css" href="css/style.css" />’
如何将其转换为 DOM。 我尝试过使用 DOMParser 类似的东西。
var parser = new DOMParser()
var el = parser.parseFromString(str, "text/xml");
console.log(el)
但是,出现错误。这是输出。
#document
<script type="text/javascript" src="file.js">
<parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black">
<h3>This page contains the following errors:</h3>
<div style="font-family:monospace;font-size:12px">error on line 1 at column 27: Extra content at the end of the document
</div>
<h3>Below is a rendering of the page up to the first error.</h3>
</parsererror>
</script>
正如输出所示,CSS 也没有被解析。
最佳答案
看来 DOMParser
只能解析单个元素。
所以这有效:
new DOMParser().parseFromString("<div/>", "text/xml")
但这不是:
new DOMParser().parseFromString("<div/><div/>", "text/xml")
所以你可以通过在整个事情周围放置一个标签来修复你的示例。
关于javascript - 将字符串解析为 DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27354993/