CKEditor3.4.1のinstanceReadyイベントでフォーカスを設定する際に問題が発生します。私はすでに次の2つの方法を試しましたが、両方が常に機能するとは限りません。
CKEDITOR.on('instanceReady', function(e) { CKEDITOR.instances.editor1.focus(); });
CKEDITOR.replace('editor1',
{
on :
{
instanceReady : function( ev )
{
ev.editor.focus();
}
}
} );
または多分これを試してみてください、これははるかに簡単です:
使用する startupFocus : true
したがって、コードは次のようになります。
CKEDITOR.replace('editor1',
{
startupFocus : true,
...
ここにあなたは私の友人に行きます
CKEDITOR.replace('editor1',
{
on :
{
instanceReady : function( ev )
{
CKEDITOR.instances.editor1.focus();
}
}
} );
または
CKEDITOR.replace('editor1',
{
on :
{
instanceReady : function( ev )
{
this.focus();
}
}
} );
CKEDITOR.instances['instance-name'].on('instanceReady', function (event) {
CKEDITOR.instances['instance-name'].focus();
});
少し遅いですが:
CKEDITOR.replace( 'YourEditor',
{
on:
{
instanceReady : function( evt )
{
//Set the focus to your editor
CKEDITOR.instances.YourEditor.focus();
}
}
}
私にとってはうまくいきます。見つかりました ここ
私にとって最良の方法は、
フォーカスイベントをトリガーする
重要なポイントはタイムアウトでインスタンスにフォーカスすることです
for(CKEDITOR.instancesのvarインスタンス){
$ timeout(function(){CKEDITOR.instances [instance] .focus();}); }
注:forループのあるインスタンスを見つけました。インスタンスを見つけるためのより良い方法を見つけるかもしれません
上記の答えはどちらも私にはうまくいきませんでした。これが私がしたことです[〜#〜] chrome [〜#〜]そしてそれはうまく機能します:
CKEDITOR.instances['instance-name'].container.focus();
汚い方法(私の答えの下のコメントを必ず読んでください):
jQuery('.cke_wysiwyg_frame').contents().find('body').focus();