ueditor修改字体无效

本文探讨了UEditor中字体样式应用不完全的问题,包括全选修改字体时部分样式未更新的情况。分析了问题出现的原因及解决思路,涉及到文本框内的占位符使用和换行操作对字体样式的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ueditor中切换字体,换行、失焦操作后,全选修改字体,部分字体样式未修改。问题在github上也有:https://github.com/fex-team/ueditor/pull/3222

根据issue上@wangzh1010的方法还会有问题:
1.文本框内按backspace或delete键清空,再进行操作,第一行文本需要修改2次字体才会生效。原因是清除到空时,增加了占位符<br/>,改成空或domUtils.fillChar即可。domUtils.fillChar设置的是\u200B,是一个不展示任何东西的占位符,获取文本长度是1。
为什么有<br/>第一行就不清空了呢?原因是在选中后修改字体时,程序先去遍历要修改样式的节点,也就是span标签,若父节点下有多个节点(<br/>占了1个子节点)会做不同的操作,不会直接修改样式。
在这里插入图片描述
在这里插入图片描述
2.换行失焦后,是复制了上一个兄弟节点,清空孙子节点的text,并赋值<br/>空节点。这个br标签导致字体样式不生效。需要修改enterTag的类型,由p改为br。
在这里插入图片描述

整个过程还没理清楚,对原代码的逻辑也有些疑问,为什么要占位符,为什么enterTag需要是p。还需要继续研究。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值