在CKEditor中以源模式查看时,如何防止自动格式化?
我喜欢直接编辑HTML源代码,而不是使用WYSIWYG界面,但每当我编写新行或布局标签时,当我切换到WYSIWYG模式,然后再次切换到源代码模式时,它们都会被格式化。
我偶然发现了一张CKEditor开发人员的票据,Preserve formatting of ProtectedSource elements,它暗示了一个可能曾经存在的设置,而这正是我想要的。我只想知道在源模式下编辑时如何完全关闭所有自动格式化。
我想出了一个我认为万无一失的解决方案(尽管不是一个令人愉快的解决方案)。
我了解了protectedSource
的设置,所以我想,也许我可以使用它,在所有的HTML之前创建一个HTML注释标记,然后在它之后创建另一个注释标记,然后将一个查找注释标记的正则表达式推入protectedSource
数组,但即使这样(信不信由你)也不起作用。
我在CKEditor之外的浏览器中直接尝试了我的表达式,它是有效的,但是CKEditor没有像预期的那样保护代码(我怀疑这是一个涉及注释标记的错误,因为我可以让它与其他字符串一起工作)。如果你想知道,这就是我所希望的变通办法,但没有:
config.protectedSource.push( /<!-- src -->[\s\S]*<!-- end src-->/gi );
我计划做的(似乎缺少在源模式下禁用格式化的设置)是将我所有的HTML嵌套在注释标记中,如下所示:
<!-- src -->
<div>some code that shouldn't be messed with (but is)</div>
<!-- end src -->
如果有人对这个场景有任何建议,或者知道我所描述的设置,或者甚至有人可以告诉我为什么我不能让protectedSource
使用两个注释标签正常工作,我很想听听。
我真的认为这肯定是个bug,因为我可以让这么多其他表达式工作得很好,我甚至可以保护单个注释标记区域内的HTML,但我就是不能让两个不同注释标记内的HTML保持不变。
https://stackoverflow.com/questions/2851068
复制相似问题