javascript - 在jQuery中删除没有文本的元素并分离带有文本的子元素
问题描述
我正在为summernote做一些插件,经过测试,我发现有一个案例场景会创建这样的结构:
<span style="text-transform: uppercase">
<span style="text-transform: lowercase">
SOME TEXT HERE
</span>
</span>
我能做些什么来清理这样的东西?这个想法是进行递归,只留下实际包含文本的结构。在上述情况下,只留下:
<span style="text-transform: lowercase">
SOME TEXT HERE
</span>
所以需要有一个带有文本的孩子。
实现这一目标的最佳解决方案是什么?我考虑过使用正则表达式,但这可能不是一个好主意。
找到了一种快速删除完全空的 html 元素的方法:
$('span:empty', context).remove();
但不适用于这些类型的案例场景。
解决方案
推荐阅读
- python - Python - 有没有办法对包含日期和时间的字符串列表进行排序
- javascript - 用户输入后没有警报输出
- html - 单击整个输入类型时间 HTML5 字段时不仅在小时钟图标上显示时间选择器
- titanium - Appcelerator:如何更改钛合金的 IOS 模拟器?
- postgresql - 如何检查多线串是否真的是多线串?
- javascript - 如何解决 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13
- pom.xml - 缺少工件 com.epam.reportportal:agent-java-testng:jar:5.0.4
- java - Try-with-resource / Closable-Autoclosable
- reactjs - 如何在没有 JSX 的情况下使这段代码工作?
- node.js - 只需要显示 json stringify 对象的值