javascript – Tinymce为自定义样式添加快捷方式

在我的初始化中,我使用了我的预定义样式

style_formats : [ 
    {title : 'Date', inline : 'span', classes : 'date'},
    {title : 'Trend UP', inline : 'span', classes : 'trend_up'},
    {title : 'Trend DOWN', inline : 'span', classes : 'trend_down'},
    {title : 'Trend NO', inline : 'span', classes : 'trend_no'}
]

这种预先设定的样式将选定的内容包装到span标签中,并为其添加特定的类;

但现在我需要添加提供相同功能的快捷键(热键)

为此,我创建了一个插件,我的热键将被定义

(function(){

    tinymce.create('tinymce.plugins.MyShortcuts', {
        init : function(ed, url) {
            ed.addShortcut('ctrl+e','Format Blockquote', ['FormatBlock', false, 'blockquote'], this);
        }
    });

    // Register plugin with a short name
    tinymce.PluginManager.add('my_shortcuts', tinymce.plugins.MyShortcuts);
})();

它适用于blockquote.但是我在tinymce documentation中找不到任何有用的信息来实现我的自定义样式的快捷方式.

有人可以帮我如何实现这个功能吗?
我试着这样做

ed.addShortcut('ctrl+e','Format Trend UP', ['FormatBlock', false, 'Trend UP'], this);

ed.addShortcut('ctrl+e','Format Trend UP', ['StylesBlock', false, 'Trend UP'], this);

但它不起作用.

解决方法:

我用这个链接(http://www.tinymce.com/tryit/custom_formats.php)来寻找解决方案.

此外

style_formats : [ 
    {title : 'Date', inline : 'span', classes : 'date'}
]

我已经为初始化添加了格式:

formats: { mydateformat: {inline: 'span', classes : 'date'}}

之后插件中的代码非常简单:

  ed.addShortcut('ctrl+alt+3', 'Date format', function(){
    ed.formatter.apply('mydateformat');
  });

或者有一些改进

ed.addShortcut('ctrl+alt+3', 'Date format', ['FormatBlock', false, 'mydateformat'], this);
上一篇:php – javascript html编辑器复制/粘贴问题


下一篇:如何将TinyMCE编辑器与php集成