私は、(stylescomboの代わりに)カスタムボタンを使用してベースp、h2、h3、h4フォーマットを実行するCKEditorプラグインを作成しました。これはうまく機能しますが、要素(例:'h2')のチェックを外すと、'div'タグが行の親要素として設定されます。デフォルトの要素として「p」になりたいのですが、「p」ボタンのチェックを外すことはできません(別の「h2」ボタンをクリックしない限り)。これはどのように可能ですか?
プラグインは次のようになります。
CKEDITOR.plugins.add('stylesbuttons_custom',{
lang:'en',
icons:'p,h2,h3,h4',
init:function(editor){
var order=0;
var addButtonCommand=function(buttonName,buttonLabel,commandName,styleDefiniton){
if (!styleDefiniton)
return;
var style=new CKEDITOR.style(styleDefiniton);
editor.attachStyleStateChange(style,function(state){
!editor.readOnly && editor.getCommand(commandName).setState(state);
});
editor.addCommand(commandName,new CKEDITOR.styleCommand(style));
if (editor.ui.addButton){
editor.ui.addButton(buttonName,{
label:buttonLabel,
command:commandName,
toolbar:'basicstyles,'+(order+=10)
});
}
};
var lang=editor.lang.stylesbuttons_custom;
addButtonCommand('P',lang.p,'p',{element:'p'});
addButtonCommand('H2',lang.h2,'h2',{element:'h2'});
addButtonCommand('H3',lang.h3,'h3',{element:'h3'});
addButtonCommand('H4',lang.h4,'h4',{element:'h4'});
}
});
私は次のようにプラグインをロードします:
config.extraPlugins='stylesbuttons_custom';
私は次のようにツールバーにボタンを配置しました:
config.toolbar:[['P','H2','H3','H4','Pre']];
問題に関するスクリーンショットは次のとおりです。