如何使用Javascript动态移除<h2>标签且保留其内部文本内容?
完全可以通过JavaScript实现该操作,核心是操作DOM元素替换逻辑,具体实现如下:
基础实现(移除所有h2标签,仅保留内部纯文本)
document.querySelectorAll('h2').forEach(h2 => { // 直接用h2内部的文本内容,替换整个h2标签 h2.replaceWith(h2.textContent); })
如果仅需要修改指定容器内的h2,不影响页面其他位置的h2,修改选择器即可,比如要修改id为article-container容器内的h2,把第一行改为:
document.querySelectorAll('#article-container h2').forEach(h2 => {
进阶实现(保留h2内部的子元素)
如果你的h2标签内部不止有纯文本,还有链接、加粗等内嵌元素需要保留,可以用下面的写法:
document.querySelectorAll('h2').forEach(h2 => { h2.replaceWith(...h2.childNodes); })
页面加载自动执行
如果需要页面加载完成后自动触发该逻辑,可以把代码包裹在DOM加载完成的监听事件中:
document.addEventListener('DOMContentLoaded', () => { // 把上面的执行逻辑放在这里即可 document.querySelectorAll('h2').forEach(h2 => { h2.replaceWith(h2.textContent); }); })
内容的提问来源于stack exchange,提问作者FlyingDonkey
相关产品推荐
相关产品推荐

