Ckeditor 如何清除应用于元素的自定义样式?
使用Ckeditor 4x,添加时,不能使用“删除格式”按钮,因为它不能删除样式(类)Ckeditor 如何清除应用于元素的自定义样式?,ckeditor,Ckeditor,使用Ckeditor 4x,添加时,不能使用“删除格式”按钮,因为它不能删除样式(类) 只有在使用默认样式时,它才能正常工作。这里有几点需要解释,因为过去的设计决策并不像看上去那么简单 默认情况下,使用RemoveFormat仅删除内联样式 要删除“样式”下拉列表应用的块样式,需要在该下拉列表中取消选择它们(它在切换模式下工作)。您将继续使用像H1这样的原始标记,您可以在格式下拉列表的帮助下将其更改为另一个像P这样的标记必须按该顺序进行。 似乎最好的解决方案是覆盖该方法。例如,您只想从h1-h
只有在使用默认样式时,它才能正常工作。这里有几点需要解释,因为过去的设计决策并不像看上去那么简单
var editor = CKEDITOR.replace('textarea_id');
editor.on( 'pluginsLoaded', function( ev ) {
editor.addRemoveFormatFilter( function( element ) {
return element.is( 'h3' ) || element.is( 'h1' ) || element.is( 'h2' );
});
});
请注意,有必要选择整个块元素以删除其格式。在某些情况下,例如,包含浮动图像的标题,可能需要使用元素的路径选择此元素,因为使用鼠标很难选择它。关注块样式,但如果您对删除内联样式感兴趣,则可以使用
addRemoveFormatFilter()
和style.checkElementRemovable()
–它可以正常工作。谢谢!我使用了最新的解决方案。