gpt4 book ai didi

javascript - 如何将整个 HTML 文档作为不包括某些元素的字符串获取?

转载 作者:搜寻专家 更新时间:2023-10-31 08:09:15 24 4
gpt4 key购买 nike

我正在寻找一种方法来获取整个 HTML 文档,将一些项目(可能用名为“exclude”的类名标记)作为字符串排除在外。我知道我可以使用 document.documentElement.innerHTML 获取整个文档或 document.documentElement.outerHTMLdocument.getElementsByTagName('html')[0].innerHTML

我仍在努力解决的问题是如何在获取 innerHTML 之前排除一些具有共同类名的节点(例如按钮或 div 或任何其他标签)?

最佳答案

我可能会克隆整棵树,然后删除不需要的元素:

var clone = document.body.cloneNode(true);
clone.querySelectorAll(".exclude").forEach(function(element) {
element.parentNode.removeChild(element);
});
var html = clone.outerHTML;

请注意,这假设 body 本身没有 exclude 类。

例子:

var clone = document.body.cloneNode(true);
// Snippet-specific: Also remove the script
clone.querySelectorAll(".exclude, script").forEach(function(element) {
element.parentNode.removeChild(element);
});
var html = clone.outerHTML;
console.log(html);
<div>
I want this
<div>And this</div>
</div>
<div class="exclude">
I don't want this
<div>Or this, since its parent is excluded</div>
</div>

关于javascript - 如何将整个 HTML 文档作为不包括某些元素的字符串获取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50988602/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com