如何禁用TinyMCE的shift + enter行为

时间:2019-09-16 13:05:24

标签: tinymce

我一直在使用TinyMCE(目前为v4,但该问题也适用于v5)作为内容的编辑器,最终将其转换为Word文档。

在TinyMCE上按shift + enter会插入一个换行符<br />而不是返回符(即创建一个新的<p>)。有什么方法可以使shift + enter的行为与enter一样?换句话说,有什么方法可以禁用shift + enter

如果有人对我问为什么感兴趣:

为了使其尽可能类似于在Word上编辑文本,我这样做是为了使<p>元素完全没有空白。这样,文档在编辑器和Word上看起来都一样。换行符在编辑器上看起来相同,但是当转换为Word时,将文本方向设置为对齐时,它们的行为会有所不同。以换行符结尾的行被拉伸到文档的整个宽度;以return结尾的行根本不会拉伸。这就是我想要的行为。

1 个答案:

答案 0 :(得分:1)

TinyMCE具有可以在按下某个键时通知的API,您可以查看该事件以查看是否已按下 Shift + Enter 。可以在您的配置中执行此操作的代码:

setup: function(editor) {
    editor.on('keydown', function (event) {
       if (event.keyCode == 13 && event.shiftKey)  {
         console.log(event);
         event.preventDefault();
         event.stopPropagation();
         return false;
       }
    });
}

这是完整的TinyMCE小提琴:http://fiddle.tinymce.com/LQgaab