我需要立即替换 <span class="inf-group">...</span>
之后的每个逗号带有竖线的节点,因为我无法直接访问原始 html。我什至犯了一个错误,使用像 ::after
这样的 css 伪元素来编辑部分。 .是否有任何 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>
最佳答案
使用下面的代码替换相同的。
参见 Check node type
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>
https://stackoverflow.com/questions/67597744/