我一直在使用 TinyMCE v5。我想添加一个绑定到 ESC 键并覆盖该键的任何编辑器默认值的快捷方式。
使用他们的文档,我尝试了他们的 tinymce.editor.addShortcut 和 tinymce.Shortcuts.add API: https ://www.tiny.cloud/docs/advanced/keyboard-shortcuts/#addcustomshortcutstotinymce
对于“模式”参数,我尝试了“esc”、“Esc”、“Escape”的每种组合,并使用其他 s/o 响应尝试将键码本身设置为“27”。使用键码实际上会向 editor.shortcuts.shortcuts 对象添加一个元素,但它不会在按键时触发。所有其他模式甚至都不会添加到对象中。
似乎如果我设置一个“keydown”事件,我可以完成同样的事情,但理想情况下我想为此使用他们的 API。
有谁知道我是否遗漏了什么?下面是一个代码笔,当您按下退出键时,它应该将突出显示颜色更改为黄色。(取自小文档并针对我的场景进行了修改)
JS
tinymce.init({
selector: 'textarea#custom-shortcut',
height: 300,
setup: function (editor) {
editor.addShortcut(
'27', 'Add yellow highlight to selected text.', function () {
editor.execCommand('hilitecolor', false , '#FFFF00');
});
},
content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px }'
});
HTML
<textarea id="custom-shortcut">
<p>To add a yellow highlight to this text:</p>
<ul>
<li>Select some text
<ul>
<li>On PC, press: Ctrl+Alt+Y</li>
<li>On MacOS, press: Command+Option+Y</li>
</ul>
</li>
</ul>
</textarea>