虽然 kindeditor 编辑器已经比较老了,但是还是很有用的。基于 kindeditor 也能定制一些功能满足特定需求。但是在 kindeditor 编辑器插入程序代码后,经常发现在 <p> 标签和 <pre> 标签之间会多出空行 <p><br></p>。
经过长期观察,发现 <pre> 在 <p></p> 之间就会出现这种情况。猜测是 kindeditor 发现 <pre> 在 <p></p> 之间后会自动把 <pre> 拿出来放在外面,同时 <p></p> 又会被 kindeditor 处理成 <p><br></p>,最终导致此现象。
既然如此,那就替换一下就好了。
html = html.replace(/(<\/pre>)(\s*)(<(?:p|p\s[^>]*)>)\s*(<\/p>)/ig, '$1$2'); // <p></p><pre>替换为<pre> html = html.replace(/(<(?:p|p\s[^>]*)>)\s*(<\/p>)(\s*)(<pre\s[^>]*>)/ig, '$3$4'); // </pre><p></p>替换为</pre>
替换的位置是在 _formatHtml 方法中。
本文来源:程序之心,转载请注明出处!
chengxuzhixin 2022-01-28 23:57:38 回复
终于解决问题了
新文推荐
© 2016 - 2022 chengxuzhixin.com All Rights Reserved.