【问题标题】:How to overwrite language labels in TinyMCE如何在 TinyMCE 中覆盖语言标签
【发布时间】:2011-02-08 17:56:17
【问题描述】:

我想更改 TinyMCE 中使用的语言标签。例如。 “Überschrift 2” -> “Überschrift”。

我使用的是 TinyMCE 的 jQuery 插件版本。

有没有办法在不编辑标签文件的情况下覆盖这些标签?

【问题讨论】:

    标签: javascript jquery tinymce rte


    【解决方案1】:

    刚刚发现了这个问题,我是通过以下方式完成的(使用 tinyMCE 4.1.x):

    tinymce.init({
              language : 'en_GB',
              init_instance_callback : function(editor) {
                  tinymce.i18n.data.en_GB['New window'] = 'Open in new tab or window';
                  tinymce.i18n.data.en_GB.Target = 'Options';
              }
          });
    

    这样做是在编辑器初始化后用您的文本覆盖默认值。无需编辑任何 lang 文件

    【讨论】:

    • 这肯定是最好的答案,无需进行任何源代码修改
    • 添加:您甚至可以像这样为自己使用的标题标签定义新的自定义标签。
    【解决方案2】:

    是的,寻找“langs”文件夹编辑 de.js。

    【讨论】:

    • 有没有办法在不编辑源文件的情况下做到这一点?我想将它插入到我创建 tinymce 实例的脚本中。
    • 我相信您可以找到解决方法并以某种方式编辑变量。但是您不能只在初始化时将它们作为参数提供。最好的方法是编辑 lng 文件。如果您不想编辑标准文件,请进行自定义。
    【解决方案3】:

    这是可能的。 我至少已经为我自己的本地化字符串测试了它,使用帮助器 geti18nstring()set18nstring() 处理 tinymce.i18n 属性。

    顺便说一句,这是财产的“完整”文档http://www.tinymce.com/wiki.php/API3:property.tinymce.i18n。 :) sn-p 的其余部分使用众所周知的敏捷模式“trust-the-source-Luke”完成。

    // folder: plugins/mycustomtinymceplugin
    //
    // file: ./langs/en_dlg.js
    
    tinyMCE.addI18n('en.mycustomtinymceplugin_dlg',{charts:"Some charts"});
    
    // file: mycustomtinymceplugin.html <-- opened by ./editor_plugin.js#init ed.windowManager.open({file : url + '/mycustomtinymceplugin.html'
    <script>
    
    function geti18nstring( id )
    {
        return tinymce.i18n[ tinymce.activeEditor.settings.language + '.mycustomtinymceplugin_dlg.' + id ];
    }
    function seti18nstring( id, i18nstring )
    {
        //just for curiosity if you wan't to modify something in a plugin which is killed after modification
        if( geti18nString( id ) == i18nstring )
        {
        alert( 'id['+id+'] was replaced already with [' + i18nstring +'].' );
        }
        else
        {
        tinymce.i18n[ tinymce.activeEditor.settings.language + '.mycustomtinymceplugin_dlg.' + id ] = i18nstring;
        }
    }
    
    function dostuffonpluginstart()
    {
        //to get localized strings
        var charts_text = geti18nstring('charts');
        $('#chartlist').append( charts_text );
        ...
        //to manipulate localized strings
        seti18nstring( 'charts', 'karamba' );
        charts_text = geti18nstring('charts');
        $('#chartlist').append( charts_text )
    }
    </script>
    ...
    
    <div id"chartlist"></div>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-01
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 2017-05-07
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多