javascript - 如何在一组 span 元素后替换纯文本内容或文本节点?
问题描述
我需要在<span class="inf-group">...</span>
节点后立即用竖线替换每个逗号,因为我无法直接访问原始 html。我什至犯了一个错误,使用 css pesudo-element like 编辑该部分::after
。是否有任何 javascript 或 jQuery 解决方案可以对整个孤立的文本节点进行操作?
样本表示原样:
<span class="irreg-infls">
<span class="inf-group"><span class="inf">aaa</span></span>
,
<span class="inf-group"><span class="inf">bbb</span></span>
,
<span class="inf-group"><span class="inf">ccc</span></span>
</span>
用户的最终表示:
<span class="irreg-infls">
<span class="inf-group"><span class="inf">aaa</span></span>
|
<span class="inf-group"><span class="inf">bbb</span></span>
|
<span class="inf-group"><span class="inf">ccc</span></span>
</span>
解决方案
使用以下代码替换相同的代码。
请参见检查节点类型
document.querySelector('.irreg-infls').childNodes.forEach((node)=>{
if(node.nodeType == 3 && node.nodeValue.trim() == ',' ) {
node.nodeValue = node.nodeValue.replace(',', '|');
}
})
<span class="irreg-infls">
<span class="inf-group"><span class="inf">aaa</span></span>
,
<span class="inf-group"><span class="inf">bbb</span></span>
,
<span class="inf-group"><span class="inf">ccc</span></span>
</span>
推荐阅读
- javascript - No native build was found for platform=win32 arch=x64 runtime=electron abi=73 uv=1 libc=glibc
- python - Explanation of fill_diagonal syntax
- ruby-on-rails - 在 MacOS Mojave 10.14.6 上安装 Redmine
- javascript - Need help in debugging a beginners javascript code
- node.js - TypeORM 无法创建名称中带有点的实体表
- javascript - 使 YouTube 嵌入(播放列表)加载更快
- azure-devops - 将 Azure DevOps 管道变量传递给 package.json 文件
- reactjs - 将路由重定向到“谢谢”组件后,我希望用户能够点击浏览器后退按钮返回主页
- amazon-ec2 - Neo4J 社区的用户和角色管理
- ios - 捆绑标识符构建错误 xamarin 形式 ios 和 ios 扩展项目