4

我有一个包含多个文本区域的页面要替换为 TinyMCE。一些文本区域采用阿拉伯文本,一些英文文本。文本区域dir根据它们应该接收的输入正确设置了 - 属性。

如何根据文本区域设置不同编辑器的方向性?我可以为所有实例设置方向性,如下所示:

$('textarea.advanced_editor').tinymce({
    ⋮
    plugins : "…,directionality,…",
    directionality: "rtl",
    ⋮
});

但是如何为每个编辑器设置不同的方向呢?

4

3 回答 3

6

在这种情况下,您将需要不同的 tinymce 配置 - 一个方向设置为 rtl,另一个设置为默认值。

更新:

这个有可能。您需要使用正确的编辑器 ID 调用它

tinymce.get('my_editor_id').getBody().dir ="rtl";
于 2012-04-18T09:32:37.270 回答
4

最后我想出了这个:

$('textarea.advanced_editor').tinymce({
    ⋮
    plugins : "…,directionality,…",
    directionality: "ltr",
    ⋮
    setup: function (ed) {
        ed.onInit.add(function(ed) {
            var direction = $('[name="'+ed.id+'"]').attr('dir');
            ed.getBody().dir = direction;
        });
    },
    ⋮
});

我使用了基于事件的解决方案,例如 @Thariama 假定并引用回dir-attribute,我知道它始终设置正确。

于 2012-04-18T10:19:49.670 回答
4

我编辑了 TinyMCE 工具栏编辑器的工具栏,并在那里提供了 ltr 和 rtl 选项供使用。

喜欢toolbar1: "ltr rtl | undo redo"函数 LoadTinyMCE()

因此,这里用户可以选择以 ltr 的形式编写,而 rtl 则以工具栏的形式出现。在 4.1.7 版中做到了。

于 2016-04-26T11:20:47.297 回答