JS函数删除标记

时间:2014-10-08 15:39:31

标签: javascript button tags tinymce

我使用以下JS代码向TinyMCE添加了一个按钮:

(function() {
    tinymce.PluginManager.add('button_span', function( editor, url ) {
        editor.addButton('button_span', {
            text: 'Test Button',
            icon: false,
            onclick : function() {
                editor.selection.setContent('<em>' + editor.selection.getContent() + '</em>');

            }
        });
    });
})();

因此,当用户点击该按钮时,它会将任何突出显示的单词包装到<em>标签中。

我的问题是,我如何制作它,以便突出显示的单词已经在<em>标记中,那么它应删除标记。我猜我们需要调整onclick功能。

1 个答案:

答案 0 :(得分:1)

也许试一试。我对tinyMCE不太熟悉,但这应该是一般的。此外,你要扩展这个以检查是否还有一个'',并且替换会因此而有所不同,这只是为了让你开始,但就像我说的,应该是你的基础试着这么想。

onclick : function() {
    var contents = editor.selection.getContent();
    if (contents.indexOf('<em>') >= 0) {
        contents.replace('<em>', '');
        contents.replace('</em>', '');
        editor.selection.setContent(contents);
    } else {
        editor.selection.setContent('<em>' + editor.selection.getContent() + '</em>');
    }
}