Javascript 删除HTML页面中不在元素标记内的文本

Javascript 删除HTML页面中不在元素标记内的文本,javascript,html,css,Javascript,Html,Css,这可能是一个非常新手的问题,但不确定如何才能做到这一点。有一个html页面显示如下 <html> <body> <div><p>Hello!</p></div> <" </body> </html> 你好! 您可以使用Jquery执行此操作: $('body').contents().filter(函数(){返回this.nodeType!=1

这可能是一个非常新手的问题,但不确定如何才能做到这一点。有一个html页面显示如下

<html>
   <body>
      <div><p>Hello!</p></div>
      <"
   </body>
</html>

你好!


您可以使用Jquery执行此操作:

$('body').contents().filter(函数(){返回this.nodeType!=1;}).remove()

你好!


您可以使用Jquery执行此操作:

$('body').contents().filter(函数(){返回this.nodeType!=1;}).remove()

你好!

险道

var body_element=document.querySelector('body');
body_element.innerHTML=body_element.innerHTML.replace(/(“|危险方式

var body_element=document.querySelector('body');

body_element.innerHTML=body_element.innerHTML.replace(/(“|将Pablo Salazar的答案转换为使用香草JavaScript,不需要大量的库。还可以使用“color it”选项

[…document.body.childNodes].filter(n=>n.nodeType===Node.TEXT\u节点)
.forEach(n=>{
const wrapper=document.createElement('span');
wrapper.style.color='red';
n、 替换为(包装纸);
append(n);
});
你好


将Pablo Salazar的答案转换为使用香草JavaScript,不需要大量的库。还可以使用“Color it”选项

[…document.body.childNodes].filter(n=>n.nodeType===Node.TEXT\u节点)
.forEach(n=>{
const wrapper=document.createElement('span');
wrapper.style.color='red';
n、 替换为(包装纸);
append(n);
});
你好


您可以使用nextSibling属性,然后使用.remove()方法

document.querySelector('div').nextSibling.remove();

你好!


您可以使用nextSibling属性,然后使用.remove()方法

document.querySelector('div').nextSibling.remove();

你好!


你想要什么?删除这个
Hello@dupinersingh是的,这是正确的。有什么原因你不能访问源代码并直接从HTML中删除Phineas吗?是的,这些奇怪的学习要求之一,非常感谢!使用记事本+,它将是黑色而不是蓝色…你想要什么?删除这个
Hello@dupinersingh-ye这是正确的,是不是有什么原因你不能直接访问源代码并从HTML中删除Phineas?是的,这是一个奇怪的学习要求,非常感谢!使用记事本+,它将是黑色而不是蓝色…要使用此方法,你将下载多余的84kb下载jquery lib要使用此方法,你将下载jquery时加载多余的84kblib@NiettheDarkAbsol你说得对。但它解决了这个问题:)这…根本不是重点。它做了非常具体的事情,但在副作用方面造成了无法估量的伤害。如果这是你真实的编码方式,我为任何不幸雇用你的人祈祷。@NiettheDarkAbsol你是对的。但它解决了任务:)这…一点也不重要。它有非常具体的作用,但会造成无法估量的副作用。如果这是你真实的编码方式,我为任何不幸雇用你的人祈祷。