Javascript 如何使用document.body.innerHTML仅获取不包含js代码的html内容?

Javascript 如何使用document.body.innerHTML仅获取不包含js代码的html内容?,javascript,html,Javascript,Html,div#html、div#css、div#js、div#run{ 边框:1px纯红; 高度:80px; 宽度:80px; 浮动:左; } 分区内容{ 明确:两者皆有; 宽度:400px; 高度:200px; 边框:1px纯黑; } 文本区{ 溢出:自动; } html css js 跑 innerText将仅返回文本数据。 因此,您可以使用document.body.innerText获取文本数据 const content=document.body.innerText; 警报(内容) di

div#html、div#css、div#js、div#run{
边框:1px纯红;
高度:80px;
宽度:80px;
浮动:左;
}
分区内容{
明确:两者皆有;
宽度:400px;
高度:200px;
边框:1px纯黑;
}
文本区{
溢出:自动;
}
html
css
js
跑

innerText
将仅返回文本数据。 因此,您可以使用
document.body.innerText
获取文本数据

const content=document.body.innerText;
警报(内容)
div#html、div#css、div#js、div#run{
边框:1px纯红;
高度:80px;
宽度:80px;
浮动:左;
}
分区内容{
明确:两者皆有;
宽度:400px;
高度:200px;
边框:1px纯黑;
}
文本区{
溢出:自动;
}
html
css
js
跑

克隆元素并删除脚本标记和其他您想要的内容

document.querySelector(“button.show”).addEventListener(“单击”),函数(){
var bodyClone=document.querySelector('body').cloneNode(true);
bodyClone.querySelectorAll('script,button.show').forEach(elem=>elem.remove());
log(bodyClone.innerHTML);
});

html
css
js
跑
内容
显示
var content=document.body.innerHTML;
var reg=newregexp('[^]+');
var onlyHtml=content.replace(reg)(“”);
警报(仅限YHTML);

请不要修改我的html结构并在其中添加新元素。为什么不能使用正则表达式仅提取html?@showkey我添加了多个元素,这些元素没有任何区别。为什么没有reg exp?看看这个:为什么用正则表达式替换js代码是行不通的?
var content=document.body.innerHTML;
var reg = new RegExp('<script type="text/javascript">[^]+</script>');
var onlyHtml = content.replace(reg,"");
alert(onlyHtml);