如何从html中删除不需要的文本

时间:2019-09-03 10:37:03

标签: javascript html

由于某些格式错误的整合,我的网站a, b = foo() if not condition else (None, None) 标签中出现了一些文字。作为一个快速修复,我想将其从前端删除。这是文本:

body

我无权访问源代码,但想使用前端的script标签快速删除此文本。显然,body标记包含许多其他节点,所以我不确定如何仅剪切文本并将body标记内的其他div保留在原处?

","author":"ccc","publisher":{"@type":"Organization","name":"ccc ccc ccc","logo":{"@type":"ImageObject","url":"https://ccc//cc/ccc//.png"}}}

3 个答案:

答案 0 :(得分:2)

看看标记,我想您可以定位document.body.firstChild元素:

document.addEventListener("DOMContentLoaded", function() {
  var node = document.body.firstChild;
  node.parentNode.removeChild(node);
});
\r\n\r\n\r\n\r\n\r\n\r\n
<div class="dontremoveme">foo</div>
<div class="dontremoveme">bar</div>

可以改为使用循环并从头开始删除所有节点,直到找到一个 valid 节点,例如包装div。

答案 1 :(得分:1)

您可以像这样获得整个身体:

在jQuery中:

boost/multiprecision/cpp_int.hpp

使用JavaScript

boost/multiprecision/float128.hpp

答案 2 :(得分:1)

也许是这样的:

// declaration :
clearMe = function(node) {
    if (node.nodeType == 3)
        node.textContent = node.textContent.trim();
    else
        for (let n in node.childNodes)
            clearMe(n);
}
// call:
clearMe(document.body);

我的函数是递归的,它不会强制重新解释html代码,例如,使用以下代码,所有事件都将丢失

node.innerHTML = node.innerHTML; // <- every EventListener or node.onEvent are lost