使用TreeWalker检索非Javascript文本节点
教我如何获取文档中的所有TextNodes,这也可以获取Javascript文本。过滤掉所有Javascript代码节点的最佳方法是什么?标记中的文本只有一个共同点:它们的父元素是使用TreeWalker检索非Javascript文本节点,javascript,dom,dhtml,textnode,Javascript,Dom,Dhtml,Textnode,教我如何获取文档中的所有TextNodes,这也可以获取Javascript文本。过滤掉所有Javascript代码节点的最佳方法是什么?标记中的文本只有一个共同点:它们的父元素是元素 if (node.parentNode.nodeName !== 'SCRIPT') 另一种方法是使用过滤器: var rejectScriptTextFilter={ acceptNode:函数(节点){ if(node.parentNode.nodeName!=='SCRIPT'){ 返回NodeFilt
元素
if (node.parentNode.nodeName !== 'SCRIPT')
另一种方法是使用过滤器:
var rejectScriptTextFilter={
acceptNode:函数(节点){
if(node.parentNode.nodeName!=='SCRIPT'){
返回NodeFilter.FILTER\u接受;
}
}
};
var walker=document.createTreeWalker(
文件正文,
NodeFilter.SHOW_TEXT,
拒绝ScriptTextFilter,
假的
);
var节点;
var textNodes=[];
while(node=walker.nextNode()){
textNodes.push(node.nodeValue);
}
console.log(textNodes)代码>
var str=“脚本在此”;
此处的文本
您可以克隆原始的文档
,删除克隆的文档
上的
元素,然后迭代克隆的文档
的其余节点