TinyMCE 核心类。
摘要
属性
| 名称 | 类型 | 摘要 | 定义者 |
|---|---|---|---|
DOM |
| 全局 DOM 实例。 |
|
PluginManager |
| 全局 PluginManager 实例。AddOnManager 的实例。 |
|
ScriptLoader |
| 全局 ScriptLoader 实例。 |
|
ThemeManager |
|
| |
activeEditor |
| 当前活动的编辑器实例。 |
|
baseURI |
| TinyMCE 安装路径的绝对 baseURI。 |
|
baseURL |
| TinyMCE 所在根目录的基 URL。 |
|
defaultOptions |
| 包含默认传递给 |
|
documentBaseURL |
| 当前文档所在的文档基 URL。 |
|
i18n |
| 语言包数据集合。 |
|
majorVersion |
| TinyMCE 构建的主版本号。 |
|
minorVersion |
| TinyMCE 构建的次版本号。 |
|
pageUid |
| 一个 uuid 字符串,用于匿名标识加载了 tinymce 的页面 |
|
releaseDate |
| TinyMCE 构建的发布日期。 |
|
suffix |
| 要添加到每个加载的插件/主题的当前后缀,例如 ".min"。 |
|
方法
| 名称 | 摘要 | 定义者 |
|---|---|---|
add() | 将编辑器实例添加到编辑器集合中。这也将其设置为活动编辑器。 |
|
addI18n() | 添加语言包,此方法由加载的语言文件(如 en.js)调用。 |
|
createEditor() | 创建编辑器实例并将其添加到 EditorManager 集合中。 |
|
each() | 对集合(如对象或数组)中的所有项进行迭代。此方法将为集合中的每个项执行回调函数,如果回调返回 false,迭代将终止。回调的格式如下: |
|
execCommand() | 在当前活动的编辑器上执行特定命令。 |
|
explode() | 拆分字符串,但移除每个值前后的空白字符。 |
|
get() | 返回给定 id 的编辑器实例。 |
|
grep() | 通过为每个项调用指定函数来过滤输入数组中的项。如果函数返回 false,该项将被排除;如果返回 true,该项将被包含。 |
|
hasOwnProperty() | JavaScript 没有保护 hasOwnProperty 方法,因此有可能覆盖它。这是一个对象独立版本。检查输入对象 |
|
inArray() | 返回项的索引,如果项不在数组中则返回 -1。 |
|
init() | 初始化一组编辑器。此方法将根据各种设置创建编辑器。 有关 |
|
is() | 检查对象是否为特定类型,例如数组。 |
|
isArray() | 返回对象是否为数组的 true/false。 |
|
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)- 可选,执行函数的作用域。