百度编辑器umeditor粘贴文本不自动换行自动添加white-space为nowrap的解决方法

今天新开发了一个发布系统,使用过程中发现内容总是不换行,检查了CSS后发现无异样,在看源代码发现文本多了<span>标签,<span>带上了white-space: nowrap;的样式,经过排查发现是百度编辑器引起的,遂检索了解决办法。

问题现象

在粘贴文本(纯文本)的时候,会自动给文本加上<span>标签,并给<span>带上了white-space: nowrap;的样式,即不自动换行,需要过滤此标签。

  <span style="white-space: nowrap;"></span>

解决方法

找到文件umeditor.js 文件,修改里面的内容把white-space:nowrap删掉,为避免出错,我对原始的代码进行了注释。

        pastebin.style.cssText = "position:absolute;width:1px;height:1px;overflow:hidden;left:-1000px;top:" +
        //pastebin.style.cssText = "position:absolute;width:1px;height:1px;overflow:hidden;left:-1000px;white-space:nowrap;top:" +
        //要在现在光标平行的位置加入,否则会出现跳动的问题

修改以后,再次粘贴文本,不再有换行自动添加white-space:nowrap的style现象。

大功告成~!