如何验证由JavaScript生成的内容是否为有效的HTML?例如,以下文档将通过静态HTML验证(例如validator.nu),不会产生任何JavaScript错误,并且在浏览器中呈现时不会出现任何问题:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>test</title>
<script>
window.onload = function() {
var text = document.createTextNode('nested anchor');
var anchor = document.createElement('a');
var nested_anchor = document.createElement('a');
nested_anchor.appendChild(text);
anchor.appendChild(nested_anchor);
document.getElementsByTagName('body')[0].appendChild(anchor);
};
</script>
</head>
<body>
<p>test</p>
</body>
</html>
然而,输出结果包含另一个锚点元素,这在HTML5规范中是无效的。有没有办法检查这些错误?