我尝试在Crayditor中的Liferay 6中自定义快捷键。
我做了一个钩子,并将其添加到文件html / js / editor / ckeditor / ckconfig.jsp中:
CKEDITOR.config.keystrokes = [
[ CKEDITOR.ALT + 121 /*F10*/, 'toolbarFocus' ],
[ CKEDITOR.ALT + 122 /*F11*/, 'elementsPathFocus' ],
[ CKEDITOR.SHIFT + 121 /*F10*/, 'contextMenu' ],
[ CKEDITOR.CTRL + 90 /*Z*/, 'undo' ],
[ CKEDITOR.CTRL + 89 /*Y*/, 'redo' ],
[ CKEDITOR.CTRL + CKEDITOR.SHIFT + 90 /*Z*/, 'redo' ],
[ CKEDITOR.CTRL + 76 /*L*/, 'link' ],
[ CKEDITOR.CTRL + 71 /*G*/, 'bold' ],
[ CKEDITOR.CTRL + 73 /*I*/, 'italic' ],
[ CKEDITOR.CTRL + 85 /*U*/, 'underline' ],
[ CKEDITOR.ALT + 109 /*-*/, 'toolbarCollapse' ]
];
问题是,无论我在这个文件中做出什么改变,它都不会改变我的CKEditor!即使我删除了所有内容,它仍然是相同的。
当我用Firebug解析页面时,我看到ckeditor.jsp被解析了,即使我手动编辑这个文件,快捷方式仍然是原生的。
问题是:这个JSP文件是否被CKEditor解析?如果是,是否有阻止我修改的内容?
答案 0 :(得分:3)
我想我们想出来了。正如http://issues.liferay.com/browse/LPS-5075中所引用的那样,最新版本的CKEditor从ROOT \ html \ _js \ editor \ ckeditor \ config.js中获取自定义,而不是ckconfig.jsp。 Liferay用户界面开发中的文档可能不再适用于此版本。更新此文件后,请确保清除浏览器缓存,关闭浏览器,清除Tomcat工作目录,然后重新启动Tomcat以确保您看到新的更新(我遇到了问题)。
覆盖工具栏的示例:
CKEDITOR.editorConfig = function( config )
{
// Define changes to default configuration here. For example:
// config.language = 'fr';
// config.uiColor = '#AADC6E';
config.toolbar_liferay = [
['Undo', 'Redo', '-', 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'SelectAll', 'RemoveFormat'],
['Link', 'Unlink', 'Anchor'],
['Image', 'Flash', 'Table', '-', 'Smiley', 'SpecialChar']
];
};
答案 1 :(得分:1)
似乎已经在Liferay 6.0 SP2中修复了这个问题。我刚刚迁移,我暴露的第一个技术现在正在工作......
但是,Ed Holderman的回答必须对Liferay 6.0 SP1有效。感谢您的帮助。
答案 2 :(得分:1)
另见:
http://www.liferay.com/community/forums/-/message_boards/view_message/10991139#_19_message_10997220
liferay 6.0.5 / 6.0.6 CE附带的jsp有很多问题,并且没有加载配置!