Могу ли я перехватить нажатие клавиши в CKEditor (клавише табуляции) и заменить поведение по умолчанию? Я хочу, чтобы ключ табуляции вставлял div с запасом.Intercept CKEditor keystroke
2
A
ответ
2
this.editorInstance.on('tab', function(evt){
evt.editor.insertHtml('span style="margin-left: 40px;"> </span>');
evt.cancel();
return false;
})
0
Я решил это несколько иначе. Вместо того, чтобы вставлять фиксированный диапазон ширины, я хотел, чтобы вкладки выстраивались в линию по всем строкам. Таким образом, я вставляю символ табуляции (& # 0 9) с форматированием 'pre'. У меня также были трудности с insertHtml(), и мне пришлось использовать комбинацию createFromHtml() и insertElement().
Вот мое решение:
// my editor's id is 'summary'
CKEDITOR.replace('summary', { ... });
var editor = CKEDITOR.instances.summary;
editor.on('key', function(ev) {
if (ev.data.keyCode == 9) { // TAB
var tabHtml = '<span style="white-space:pre">	</span>';
var tabElement = CKEDITOR.dom.element.createFromHtml(tabHtml, editor.document);
editor.insertElement(tabElement);
ev.cancel();
}
});
1
Я использую версию 4.4.7. По крайней мере, здесь можно изменить поведение нажатия TAB только путем редактирования config.js
. С помощью этих указаний TAB и значений SHIFT + TAB:
config.keystrokes =
[
[ 09, 'indent' ],
[ CKEDITOR.SHIFT + 09, 'outdent' ]
];
Смежные вопросы
- 1. Отправка Keystroke
- 2. Readable KeyStroke
- 3. Ярлык Keystroke
- 4. SWT KeyStroke в строку
- 5. emacs multi-keystroke binding
- 6. Applescript keystroke Filepath variable
- 7. Applescript Realistic Keystroke
- 8. имитировать веб-страницу keystroke
- 9. intercept j_security_check
- 10. Ninject Intercept
- 11. jquery intercept
- 12. Java KeyStroke catchining Направленные ключи
- 13. как зарегистрировать KeyStroke на JXDatePicker
- 14. Установить несколько масок для KeyStroke
- 15. Keystroke Персонажи Многократно С AppleScript
- 16. Javascript CHAR insert replic keystroke
- 17. Кнопка KeyStroke ENTER disable NewLine
- 18. C# Winform Alter Sent Keystroke
- 19. Проблема с KeyEvent и KeyStroke
- 20. Autotac Intercept Target Method
- 21. Intercept EventEmitters with Jasmine
- 22. Intercept Shell Command
- 23. UIWebView URL Intercept
- 24. Intercept Установка/удаление
- 25. Intercept страницы перенаправления
- 26. Intercept SMS с SQLite
- 27. Bytebuddy intercept exception throw
- 28. Intercept javascript event
- 29. Umbraco Intercept CMS activities
- 30. Paste Intercept event failure