fckeditor的两个疑问:多配置和焦点管理
程序员文章站
2022-07-08 22:54:33
...
现在web页面上的html编辑器,选择用fckeditor的越来越多了。我自己也很喜欢用这款编辑器,可是用的过程中,有两个问题一直让我有点不爽:
1. fckeditor的配置主要是在一个fckconfig.js中完成的。假设一个应用中有多个地方用到了fckeditor,并且这些地方要求不同的配置。比如有的地方要求工具条默认直接显示,有的地方则要求工具条默认折叠起来。当然,有一种方案是在应用中按照不同的配置,预置好几套完整的编辑器。然后在应用的不同地方,通过引入不同的js文件,来达到这种效果。如下就分别引入了两个不同位置的fckeditor。
或者
但是这种方法的一大弱点就是会有很大的文件数量的冗余。
不知道有没有一种方法,可以轻松让fckeditor的实例可以有不同的配置信息呢?
2. fckeditor的编辑区域一般都是一个iframe,有时还是iframe中嵌iframe,那么控制focus就成了一个问题。比如要用tab键在页面中的textfield和fckeditor中切换,就很难做到。再比如想在页面加载的时候,让fckeditor自动获得焦点,也不是很容易的事情。(fckconfig.js中确实有个FCKConfig.StartupFocus的配置项可以控制获得焦点的,但是如上面第一个问题所述,很不灵活)
不知道有没有什么好办法?
1. fckeditor的配置主要是在一个fckconfig.js中完成的。假设一个应用中有多个地方用到了fckeditor,并且这些地方要求不同的配置。比如有的地方要求工具条默认直接显示,有的地方则要求工具条默认折叠起来。当然,有一种方案是在应用中按照不同的配置,预置好几套完整的编辑器。然后在应用的不同地方,通过引入不同的js文件,来达到这种效果。如下就分别引入了两个不同位置的fckeditor。
<script type="text/javascript" src="<%=request.getContextPath()%>/FCKeditor_01/fckeditor.js"></script>
或者
<script type="text/javascript" src="<%=request.getContextPath()%>/FCKeditor_02/fckeditor.js"></script>
但是这种方法的一大弱点就是会有很大的文件数量的冗余。
不知道有没有一种方法,可以轻松让fckeditor的实例可以有不同的配置信息呢?
2. fckeditor的编辑区域一般都是一个iframe,有时还是iframe中嵌iframe,那么控制focus就成了一个问题。比如要用tab键在页面中的textfield和fckeditor中切换,就很难做到。再比如想在页面加载的时候,让fckeditor自动获得焦点,也不是很容易的事情。(fckconfig.js中确实有个FCKConfig.StartupFocus的配置项可以控制获得焦点的,但是如上面第一个问题所述,很不灵活)
不知道有没有什么好办法?