如何在TinyMCE v4中动态设置语言文件

时间:2017-08-30 22:32:20

标签: javascript tinymce tinymce-4

我尝试设置我的脚本,使其从<html>属性中获取语言。作为一个工作正常的基本概念,唯一的问题是我有一个定制文件所在的自定义位置。

如何为en_US设置参数language_url。我尝试了一个空字符串''以及值false但没有成功。我收到了错误:

  

无法加载插件网址:https://localhost/js/tinymce/langs/en_US.js

这是因为en_US没有语言文件。

var lang = $('html').attr('lang');

tinymce.init({ 
    selector: 'textarea',
    language_url: (lang === 'en' ? '' : '/js/tinymce/langs/de.js'),
    language: (lang === 'en' ? 'en_US' : 'de')
});

language_url没有默认值吗?

1 个答案:

答案 0 :(得分:1)

对此有两点评论......

如果要将语言文件放在TinyMCE的langs文件夹中,则根本不需要使用language_url配置选项。只有在您希望将文件存储在其他位置时才需要这样做。您上面的示例似乎暗示您将语言文件放在TinyMCE发行版的langs文件夹中,如果是这样的话,您根本就不需要该设置。

如果你确实需要这个设置(但有时只是),你可以使用JavaScript来实现这一点......

首先创建一个&#34;默认&#34;将init对象作为页面上的JavaScript变量,然后再引用它。例如:

var default_init = {
  theme: "modern",
  plugins....,
  toolbar....
}

...然后当你想调用TinyMCE实例时,可以使用该基础对象来创建你的init:

var lang = $('html').attr('lang');
if (lang !== 'en') {
  default_init.language_url = '/js/tinymce/langs/' + lang + '.js';
}
tinymce.init(default_init);