2

の後にキャレットをテキストの最後に配置したいと思いますfocus()

CKEditor 3 には多くのソリューションがあり、そのうちの 3 つを試してみましたが、CKEditor 4 では機能しないようです。

注: でインライン編集を使用していcontenteditable="true"ます。

4

1 に答える 1

4

これは仕事をするはずです(テーマエディタとインラインエディタのWFM):

CKEDITOR.inline( 'editable', {
    on: {
        focus: function( evt ) {
            setTimeout( function() {
                var editor = evt.editor,
                    range = editor.createRange();

                range.moveToElementEditEnd( editor.editable() );
                range.select();
                range.scrollIntoView();
            }, 100 );
        }
    }
} );

フォーカス選択が最初またはクリックされた場所に自動的に配置されるため、タイムアウトが必要であることに注意してください。そのため、その動作を上書きするにはしばらく待つ必要があります。もちろん、より短いタイムアウトを確認できます。

于 2013-03-10T13:56:38.130 に答える