是否可以通过JS捕获html文档中的第一行代码(即使这是注释?)。 当我们将html5标语上传到发布商时,它需要在body标签之前的html顶部的注释中具有高度和宽度,如果可以在JS中使用它,这将非常有用。
我在考虑以下方面的事情
function myFunction() {
var c = document.childNodes;
var i;
for (i = 0; i < c.length; i++) {
store = c[1].textContent.trim();
console.log(c[0].textContent.trim());
}
}
和html就是:
<!-- 140x600 -->
<!DOCTYPE html>
<html>
<p>hi</p>
</html>
是否甚至有可能在JS中的html文档的最顶部捕获注释?
欢呼
答案 0 :(得分:2)
您应该可以通过以下方式获取此信息:
document.firstChild
答案 1 :(得分:1)
我认为在DOM中找到第一条注释(而不是第一行)对您很有帮助(如果我们在这里,这是一个更通用的解决方案)。即使您决定在某个时候精简文档(使文档全部成为一排纸),这也可以使文档正常工作。
您应该使用带有SHOW_COMMENTS
过滤器的TreeWalker
。
var treeWalker = document.createTreeWalker(
document.documentElement,
NodeFilter.SHOW_COMMENTS,
null,
false
);
let commentData = null;
while (treeWalker.nextNode()){
// keep only comments
if (treeWalker.currentNode.nodeType === 8) {
commentData = treeWalker.currentNode.textContent;
break;
}
}
这还支持在DOM中的第一个节点上没有您的特定注释。