tinymce - 如何将 TinyMCE 功能重新用于自定义按钮的粗体/斜体/删除线?
问题描述
我只是想通过插件向 TinyMCE 编辑器添加一些按钮。这些按钮将具有与粗体/斜体/删除线按钮完全相同的功能,但将用于 HTML 标签:<mark>
和<ins>
.
我可以重新使用这些现有按钮的代码并以某种方式扩展它以更改插入的 html 标记吗?
我翻遍了GitHub 存储库,找不到此功能的编写位置。我希望有一个可以扩展的简单 API。
我发现了一些看起来很有希望的命令标识符,比如mceInsertContent
可以插入一些简单的东西,比如一个<hr />
,但不能在所选文本周围插入标签。
解决方案
您可以通过向 TinyMCE 配置添加少量代码来创建一个简单的工具栏按钮,以使用附加信息包装选定的文本。
步骤 1:定义自定义按钮
您需要做的第一件事是创建一个自定义按钮 ( https://www.tiny.cloud/docs/ui-components/toolbarbuttons/ )。代码看起来像这样:
editor.ui.registry.addButton('wrapselection', {
text: 'Wrap Selection',
onAction: function () {
editor.insertContent("<mark>" + editor.selection.getContent() + "</mark>");
}
});
setup()
在 TinyMCE 配置 的函数中添加它。
步骤 2:将按钮添加到工具栏
您的 TinyMCE 配置具有toolbar
控制工具栏上显示的按钮的设置。您需要将新的自定义按钮添加到工具栏:
toolbar: "wrapselection | code undo redo | bold italic | bullist numlist"
这是一个 TinyMCE Fiddle,显示了所有这些操作: http: //fiddle.tinymce.com/lQgaab/2
推荐阅读
- python - 无法在来自 python 的电子邮件中附加从 pandas 数据框创建的 excel 文件
- php - 如何在 php 中初始化 Cloud Firestore?
- c - 如何将省略号参数传递给makecontext,它也接受C中的省略号参数?
- ios - MTKView 绘图性能
- mysql - 如何使用 Mysql 过程和 Date() 创建存档表
- javascript - jQuery 行取消选择的不同行为,我不明白为什么
- reactiveui - ReactiveUI - 在视图模型属性更改时在视图中调用委托
- django - 主页链接发送到关于/关于页面无法回家
- bash - 带有少量命令的 Bash,将少量内置命令列入白名单
- linux - 端口转发仅在本地工作