kindeditor编辑器插入程序代码后在<p>标签和<pre>标签间会多出一行<p><br></p>
导致前台显示的时候很难看。如下图:

我想实现的情况是1,但是出现的情况是2
而且初次提交代码没问题,当修改的时候用到“HTML代码”标签的时候,就会出现多一行。
分析原因,应该是
1,插入代码的时候会出现<p><pre>...</pre></p>这种情况
2,修改的时候会变成<p></p><pre>...</pre><p></p>这种情况
3,切换“HTML代码”的时候kindeditor会把<p></p>替换成<p><br></p>
4,再次提交代码,就会出现多一行的问题出现。
修改的思路是把<p></p><pre>替换为<pre>,</pre><p></p>替换为</pre>,就不会出现多一行了。
打开kindeditor-all.js747行,插入两行代码
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>
如图:

本文探讨KindEditor编辑器在插入程序代码时存在的显示问题,特别是在<p>和<pre>标签间的多余<p><br></p>行,影响代码展示效果。通过分析编辑器的处理逻辑,提出了解决方案,即在kindeditor-all.js中修改代码,以消除多余的标签行,改善代码显示。
1664

被折叠的 条评论
为什么被折叠?



