更改 TinyMCE 删除格式按钮的工具提示

Changing the tool tip for the TinyMCE removeformatting button

我想更改 TinyMCE 4“删除格式”按钮的工具提示:

从“清除格式”到“清除所选格式”。但是我找不到在 TinyMCE 代码中定义此按钮的位置。

谁能告诉我它的 ed.addButton 代码?

谢谢

从外观上看,您要查找的行是:

<span id="mceu_61-text" class="mce-text">Clear formatting</span>

所以一个简单的 JS 搜索和重写内部 HTML 就可以了。但是,如果未选择任何内容,此按钮将清除文本上的所有格式,或者如果有选择,则仅清除所选文本。 (请注意,元素的 id 会根据您加载的工具栏而变化,该行取自完整的演示)

虽然实际的硬编码字符串似乎位于

tinymce/classes/ui/FormatControls.js

第 300 行

removeformat: ['Clear formatting', 'RemoveFormat'],

更改这些的一种方法是使用 en_US 的语言文件并在其中放置替换项。要完成这项工作,您需要做两件事:

1 - 为您的 init 添加语言配置选项:

tinymce.init({ 
  selector: '#myTextArea',
  language: 'en_US',   //Force custom translations of button/menu text in English.
  ...
});

2 - 将 en_US.js 文件添加到 TinyMCE 中的 langs 文件夹。
该文件是 TinyMCE 查找语言翻译的地方,因此如果您明确告诉 TinyMCE 使用 en_US 语言,它将在 langs 文件夹中查找与该语言同名的 JS 文件。然后您可以将更新的翻译放入该文件:

tinymce.addI18n('en_US',{
  "Clear formatting": "Custom Clear Formatting Text"
});

要查看您可以更改的所有选项,只需从此处获取一个语言文件:https://www.tinymce.com/download/language-packages/ 左侧的标签是 "key",右侧的值是 "value"。当您在 tinymce.init({}) 调用中不包含对某种语言的引用时,"key" 实际上是您用英语获得的内容..

这样做的好处是您无需更改 TinyMCE 代码本身,因此这使得更新 TinyMCE 变得更加容易,因为您不需要不断重新创建您的更改。