PrimeFaces 扩展 CKEditor:无法访问自定义配置
PrimeFaces Extensions CKEditor: cannot access custom config
我需要我的 pe:ckEditor
来加载自定义配置,但是我在这件事上已经有一段时间没有成功了,我欢迎任何如何让它工作的建议。
(我需要它的功能,因为我有这个问题:, which might be solved by this https://ckeditor.com/old/forums/CKEditor-3.x/utf-8-ckeditor or something like this https://ckeditor.com/old/forums/Support/Change-charset-UTF-8)
自定义配置文件与 pe:ckEditor
所在的 XHTML 文件位于同一文件夹中。
自定义配置内容:
CKEDITOR.editorConfig = function( config ) {
config.uiColor = '#AADC6E';
config.toolbar = [
{ name: 'basicstyles', items: [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat' ] },
{ name: 'paragraph', items: [ 'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'] },
'/',
{ name: 'links', items: [ 'Link', 'Unlink' ] },
{ name: 'styles', items: [ 'Styles', 'Format', 'Font', 'FontSize' ] },
'/',
{ name: 'colors', items: [ 'TextColor', 'BGColor' ] },
{ name: 'insert', items: [ 'Table', 'HorizontalRule', 'SpecialChar'] },
{ name: 'tools', items: [ 'ShowBlocks' ] },
{ name: 'document', items: [ 'Source' ] },
];
};
我试过了:
<h:outputScript name="ckEditor.js" library="js"></h:outputScript>
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
<script type="text/javascript">
CKEDITOR.config.customConfig = 'ckEditor.js';
CKEDITOR.replace('editor');
</script>
并且:
<h:outputScript name="ckEditor.js" library="js"></h:outputScript>
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor"></pe:ckEditor>
<script type="text/javascript">
CKEDITOR.config.customConfig = 'ckEditor.js';
CKEDITOR.replace('editor');
</script>
并且:
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor" customConfig="./ckEditor.js"></pe:ckEditor>
并且(文件的完整路径是 project/WebContent/pages/inc/ckEditor.js 和 project/WebContent/pages/inc/emailEditor.xhtml):
<pe:ckEditor id="editor" customConfig="project/WebContent/pages/inc/ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor" customConfig="/project/WebContent/pages/inc/ckEditor.js"></pe:ckEditor>
并且(因为 https://forum.primefaces.org/viewtopic.php?t=31334):
<pe:ckEditor id="editor" customConfig="#{request.contextPath}/ckEditor.js"></pe:ckEditor>
当我将自定义配置文件中的详细信息输入 <pe:ckEditor>
下面的 <script>
时,它起作用了,但不幸的是,这不是我的情况的解决方案,因为我在许多地方都使用了编辑器页面,并且只需要将其设置存储在一个地方。
此外,当我在谷歌上搜索时,我发现一些建议我应该将自定义配置的说明放入默认配置文件中,但我没有在我的项目中找到任何默认配置文件,所以很遗憾不是我的一个选择。
我做了 google,阅读了 PrimeFaces 扩展页面和 CKEditor 页面上的文档,阅读了 PrimeFaces 论坛、CKEditor 论坛和此处的类似问题,但还没有任何效果。
PrimeFaces 扩展 - 版本 7.0.2
PrimeFaces - 版本 7.0.7
pe:ckEditor
上的 customConfig
属性是 URL。
所以只要把你的 JS 放在某个地方,它可以通过浏览器访问。
如果它的可访问性(例如)为 localhost:8080/myfolder/ckeditor.js
,当您将 customConfig
设置为 '#{request.contextPath}myFolder/ckeditor.js'
时它应该可以正常工作
我需要我的 pe:ckEditor
来加载自定义配置,但是我在这件事上已经有一段时间没有成功了,我欢迎任何如何让它工作的建议。
(我需要它的功能,因为我有这个问题:
自定义配置文件与 pe:ckEditor
所在的 XHTML 文件位于同一文件夹中。
自定义配置内容:
CKEDITOR.editorConfig = function( config ) {
config.uiColor = '#AADC6E';
config.toolbar = [
{ name: 'basicstyles', items: [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat' ] },
{ name: 'paragraph', items: [ 'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'] },
'/',
{ name: 'links', items: [ 'Link', 'Unlink' ] },
{ name: 'styles', items: [ 'Styles', 'Format', 'Font', 'FontSize' ] },
'/',
{ name: 'colors', items: [ 'TextColor', 'BGColor' ] },
{ name: 'insert', items: [ 'Table', 'HorizontalRule', 'SpecialChar'] },
{ name: 'tools', items: [ 'ShowBlocks' ] },
{ name: 'document', items: [ 'Source' ] },
];
};
我试过了:
<h:outputScript name="ckEditor.js" library="js"></h:outputScript>
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
<script type="text/javascript">
CKEDITOR.config.customConfig = 'ckEditor.js';
CKEDITOR.replace('editor');
</script>
并且:
<h:outputScript name="ckEditor.js" library="js"></h:outputScript>
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor"></pe:ckEditor>
<script type="text/javascript">
CKEDITOR.config.customConfig = 'ckEditor.js';
CKEDITOR.replace('editor');
</script>
并且:
<pe:ckEditor id="editor" customConfig="ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor" customConfig="./ckEditor.js"></pe:ckEditor>
并且(文件的完整路径是 project/WebContent/pages/inc/ckEditor.js 和 project/WebContent/pages/inc/emailEditor.xhtml):
<pe:ckEditor id="editor" customConfig="project/WebContent/pages/inc/ckEditor.js"></pe:ckEditor>
并且:
<pe:ckEditor id="editor" customConfig="/project/WebContent/pages/inc/ckEditor.js"></pe:ckEditor>
并且(因为 https://forum.primefaces.org/viewtopic.php?t=31334):
<pe:ckEditor id="editor" customConfig="#{request.contextPath}/ckEditor.js"></pe:ckEditor>
当我将自定义配置文件中的详细信息输入 <pe:ckEditor>
下面的 <script>
时,它起作用了,但不幸的是,这不是我的情况的解决方案,因为我在许多地方都使用了编辑器页面,并且只需要将其设置存储在一个地方。
此外,当我在谷歌上搜索时,我发现一些建议我应该将自定义配置的说明放入默认配置文件中,但我没有在我的项目中找到任何默认配置文件,所以很遗憾不是我的一个选择。
我做了 google,阅读了 PrimeFaces 扩展页面和 CKEditor 页面上的文档,阅读了 PrimeFaces 论坛、CKEditor 论坛和此处的类似问题,但还没有任何效果。
PrimeFaces 扩展 - 版本 7.0.2
PrimeFaces - 版本 7.0.7
pe:ckEditor
上的 customConfig
属性是 URL。
所以只要把你的 JS 放在某个地方,它可以通过浏览器访问。
如果它的可访问性(例如)为 localhost:8080/myfolder/ckeditor.js
,当您将 customConfig
设置为 '#{request.contextPath}myFolder/ckeditor.js'