TinyMCE 核心类。

摘要

属性

名称类型摘要定义者

DOM

DOMUtils

全局 DOM 实例。

tinymce

PluginManager

AddOnManager

全局 PluginManager 实例。AddOnManager 的实例。

tinymce

ScriptLoader

ScriptLoader

全局 ScriptLoader 实例。

tinymce

ThemeManager

AddOnManager

tinymce

activeEditor

Editor

当前活动的编辑器实例。

tinymce

baseURI

URI

TinyMCE 安装路径的绝对 baseURI。

tinymce

baseURL

String

TinyMCE 所在根目录的基 URL。

tinymce

defaultOptions

Object

包含默认传递给 init 方法的选项的对象。这些默认值将与其他传递给 init 的选项进行浅合并。

tinymce

documentBaseURL

String

当前文档所在的文档基 URL。

tinymce

i18n

Object

语言包数据集合。

tinymce

majorVersion

String

TinyMCE 构建的主版本号。

tinymce

minorVersion

String

TinyMCE 构建的次版本号。

tinymce

pageUid

String

一个 uuid 字符串,用于匿名标识加载了 tinymce 的页面

tinymce

releaseDate

String

TinyMCE 构建的发布日期。

tinymce

suffix

String

要添加到每个加载的插件/主题的当前后缀,例如 ".min"。

tinymce

方法

名称摘要定义者

add()

将编辑器实例添加到编辑器集合中。这也将其设置为活动编辑器。

tinymce

addI18n()

添加语言包,此方法由加载的语言文件(如 en.js)调用。

tinymce

createEditor()

创建编辑器实例并将其添加到 EditorManager 集合中。

tinymce

each()

对集合(如对象或数组)中的所有项进行迭代。此方法将为集合中的每个项执行回调函数,如果回调返回 false,迭代将终止。回调的格式如下:cb(value, key_or_index)。

tinymce

execCommand()

在当前活动的编辑器上执行特定命令。

tinymce

explode()

拆分字符串,但移除每个值前后的空白字符。

tinymce

get()

返回给定 id 的编辑器实例。

tinymce

grep()

通过为每个项调用指定函数来过滤输入数组中的项。如果函数返回 false,该项将被排除;如果返回 true,该项将被包含。

tinymce

hasOwnProperty()

JavaScript 没有保护 hasOwnProperty 方法,因此有可能覆盖它。这是一个对象独立版本。检查输入对象 obj 是否具有属性 prop。

tinymce

inArray()

返回项的索引,如果项不在数组中则返回 -1。

tinymce

init()

初始化一组编辑器。此方法将根据各种设置创建编辑器。

有关 init 的基本用法信息,请参阅:基本设置。

tinymce

is()

检查对象是否为特定类型,例如数组。

tinymce

isArray()

返回对象是否为数组的 true/false。

tinymce

makeMap()

根据名称数组创建名称/对象映射表。

tinymce

map()

通过每次迭代函数调用的返回值创建新数组。这使得您可以将一个数组列表转换为另一个数组列表。

tinymce

overrideDefaults()

覆盖编辑器实例的默认选项。overrideDefaults 方法会替换 defaultOptions,包括之前调用 overrideDefaults 方法设置的任何选项。

使用 Tiny Cloud 时,其中一些默认值是云端编辑器正常运行所必需的。

因此,在使用云端编辑器时,overrideDefaults 的新集成选项必须与 tinymce.defaultOptions 中的选项合并。

tinymce

remove()

从页面移除编辑器。

tinymce

resolve()

解析字符串并根据特定结构返回对象。

tinymce

setActive()

设置当前活动的编辑器实例并触发停用/激活事件。

tinymce

toArray()

将指定对象转换为真正的 JavaScript 数组。

tinymce

translate()

使用语言包条目翻译指定字符串。

tinymce

triggerSave()

调用集合中所有编辑器实例的保存方法。这在提交表单时非常有用。

tinymce

trim()

去除字符串开头和结尾的空白字符。

tinymce

walk()

对对象树中的每个条目执行指定函数。

tinymce

方法

add()

add(editor: tinymce.Editor): tinymce.Editor

向编辑器集合添加编辑器实例。这同时会将其设置为当前活动编辑器。

参数

  • editor (Editor) - 要添加到集合中的编辑器实例。

返回值

  • Editor - 传入的同一实例。


addI18n()

addI18n(code: String, items: Object)

添加语言包,此方法由加载的语言文件(如 en.js)调用。

参数

  • code (String) - 可选的语言代码。

  • items (Object) - 包含翻译条目的名称/值对象。


createEditor()

createEditor(id: String, options: Object): tinymce.Editor

创建编辑器实例并将其添加到 EditorManager 集合中。

参数

  • id (String) - 编辑器使用的实例 ID。

  • options (Object) - 编辑器实例选项。

返回值

  • Editor - 创建的编辑器实例。


each()

each(o: Object, cb: Function, s: Object)

对集合(如对象或数组)中的所有条目进行迭代。该方法会对集合中的每个条目执行回调函数,如果回调返回 false,则迭代终止。回调函数的格式为:cb(value, key_or_index)。

示例

// 迭代数组
tinymce.each([ 1,2,3 ], (v, i) => {
  console.debug("值: " + v + ", 索引: " + i);
});

// 迭代对象
tinymce.each({ a: 1, b: 2, c: 3 }, (v, k) => {
  console.debug("值: " + v + ", 键: " + k);
});

参数

  • o (Object) - 要迭代的集合。

  • cb (Function) - 对每个条目执行的回调函数。

  • s (Object) - 执行回调的可选作用域。


execCommand()

execCommand(cmd: String, ui: Boolean, value: Object | String | Number | Boolean): Boolean

在当前活动的编辑器上执行特定命令。

参数

  • cmd (String) - 要执行的命令,例如 Bold。

  • ui (Boolean) - 可选的布尔值,表示是否为该命令显示 UI。

  • value (Object | String | Number | Boolean) - 可选的值参数,例如链接的 URL。

返回值

  • Boolean - 命令是否执行成功(true/false)。


explode()

explode(s: String, d: String)

分割字符串并移除每个值前后的空白字符。

示例

// 将字符串分割为包含 a,b,c 的数组
const arr = tinymce.explode('a, b,   c');

参数

  • s (String) - 要分割的字符串。

  • d (String) - 分割分隔符。


get()

get(id: String | Number): tinymce.Editor | Array

返回指定id的editor实例。

示例

// 根据id为editor添加onclick事件
tinymce.get('mytextbox').on('click', (e) => {
  ed.windowManager.alert('Hello world!');
});

// 根据索引为editor添加onclick事件
tinymce.get(0).on('click', (e) => {
  ed.windowManager.alert('Hello world!');
});

// 根据id为editor添加onclick事件(较长版本)
tinymce.EditorManager.get('mytextbox').on('click', (e) => {
  ed.windowManager.alert('Hello world!');
});

参数

  • id (String | Number) - 要返回的editor实例的id或索引。

返回值

  • Editor - editor实例或editor实例数组。

  • Array - editor实例或editor实例数组。


grep()

grep(a: Array, f: Function): Array

通过为每个元素调用指定的函数来筛选输入数组中的元素。如果函数返回false,则排除该元素;如果返回true,则包含该元素。

示例

// 筛选出一些元素,这将返回包含4和5的数组
const items = tinymce.grep([ 1,2,3,4,5 ], (v) => v > 3);

参数

  • a (Array) - 要遍历的元素数组。

  • f (Function) - 要为每个元素调用的函数。包含/排除取决于它的返回值。

返回值

  • Array - 基于输入导入并筛选后的新数组。


hasOwnProperty()

hasOwnProperty(obj: Object, prop: String): Boolean

JavaScript未保护hasOwnProperty方法,因此可能会覆盖它。这是一个独立于对象的版本。检查输入对象obj是否具有属性prop。

参数

  • obj (Object) - 要检查属性是否存在的对象。

  • prop (String) - 对象上的属性名称。

返回值

  • Boolean - 如果对象具有指定的属性,则为true。


inArray()

inArray(item: any, arr: Array): Number

返回元素的索引,如果元素不在数组中,则返回-1。

参数

  • item (any) - 要搜索的元素。

  • arr (Array) - 要在其中搜索的数组。

返回值

  • Number - 元素的索引,如果未找到元素,则为-1。


init()

init(options: Object): Promise

初始化一组编辑器。此方法将根据各种设置创建编辑器。

有关init的基本用法,请参阅:基本设置。

示例

// 使用较长的方法初始化一个editor
tinymce.EditorManager.init({
   some_settings : 'some value'
});

// 使用较短的版本初始化一个editor实例,并使用promise
tinymce.init({
  some_settings : 'some value'
}).then((editors) => {
  ...
});

参数

  • options (Object) - 要传递给每个editor实例的选项对象。

返回值

  • Promise - 当所有editor实例初始化完成后,使用编辑器数组解析的Promise。


is()

is(obj: Object, type: String): Boolean

检查对象是否为特定类型,例如数组。

参数

  • obj (Object) - 要检查类型的对象。

  • type (String) - 要检查的可选类型。

返回值

  • Boolean - 如果对象是指定的类型,则为true/false。


isArray()

isArray(obj: Object): Boolean

如果对象是数组,则返回true/false。

参数

  • obj (Object) - 要检查的对象。

返回值

  • Boolean - 对象是否为数组的状态true/false。


makeMap()

makeMap(items: Array | String, delim: String, map: Object): Object

从包含名称的数组中创建一个名称/对象映射。

参数

  • items (Array | String) - 用于创建映射的元素。

  • delim (String) - 用于拆分字符串的可选分隔符。

  • map (Object) - 要添加元素的可选映射。

返回值

  • Object - 元素的名称/值映射。


map()

map(array: Array, callback: Function): Array

通过每次迭代函数调用的返回值创建一个新数组。这使您能够将一个数组列表转换为另一个数组列表。

参数

  • array (Array) - 要迭代的元素数组。

  • callback (Function) - 要为每个元素调用的函数。它的返回值将是新值。

返回值

  • Array - 基于函数返回值的新值数组。


overrideDefaults()

overrideDefaults(defaultOptions: Object)

覆盖编辑器实例的默认选项。overrideDefaults 方法会替换 defaultOptions,包括之前调用 overrideDefaults 方法设置的任何选项。

在使用 Tiny Cloud 时,某些默认选项对于基于云的编辑器正常运行是必需的。

因此,在使用 overrideDefaults 与基于云的编辑器时,任何新集成的选项必须与 tinymce.defaultOptions 中的选项合并。

示例

const customOptions = {
  toolbar_sticky: true
};

tinymce.overrideDefaults({
  ...tinymce.defaultOptions,
  ...customOptions
});

参数

  • defaultOptions (Object) - 默认选项对象。


remove()

remove(selector: tinymce.Editor | String | Object): tinymce.Editor

从页面移除一个或多个编辑器。

示例

// 移除绑定到 div 的所有编辑器
tinymce.remove('div');

// 移除绑定到 textarea 的所有编辑器
tinymce.remove('textarea');

// 移除所有编辑器
tinymce.remove();

// 通过 id 移除特定实例
tinymce.remove('#id');

参数

  • selector (Editor | String | Object) - 要移除的 CSS 选择器或编辑器实例。

返回值

  • Editor - 如果找到则返回传入的编辑器,否则返回 null。


resolve()

resolve(n: String, o: Object): Object

解析字符串并返回特定结构中的对象。

示例

// 将路径解析为对象引用
const obj = tinymce.resolve('a.b.c.d');

参数

  • n (String) - 要解析的路径,例如 a.b.c.d。

  • o (Object) - 可选的搜索对象,默认为 window。

返回值

  • Object - 路径中的最后一个对象,如果无法解析则为 null。


setActive()

setActive(editor: tinymce.Editor)

设置活动编辑器实例并触发 deactivate/activate 事件。

参数

  • editor (Editor) - 要设置为活动实例的编辑器实例。


toArray()

toArray(obj: Object): Array

将指定对象转换为真正的 JavaScript 数组。

参数

  • obj (Object) - 要转换为数组的对象。

返回值

  • Array - 基于输入的数组对象。


translate()

translate(text: String | Array | Object): String

使用语言包项翻译指定字符串。

参数

  • text (String | Array | Object) - 要翻译的字符串

返回值

  • String - 翻译后的字符串。


triggerSave()

triggerSave()

调用集合中所有编辑器实例的 save 方法。当表单需要提交时,这非常有用。

示例

// 保存所有内容tinyMCE.triggerSave();

trim()

trim(s: String): String

去除字符串开头和结尾的空白字符。

参数

  • s (String) - 要去除空白字符的字符串。

返回值

  • String - 去除空白字符后的新字符串。


walk()

walk(o: Object, f: Function, n: String, s: String)

对对象树中的每个项执行指定函数。

参数

  • o (Object) - 要遍历的对象树。

  • f (Function) - 对每个项调用的函数。

  • n (String) - 可选,要遍历的对象内部的集合名称,例如 childNodes。

  • s (String) - 可选,执行函数的作用域。