简单的Jquery WYSIWYG编辑器问题

时间:2011-03-06 19:10:03

标签: jquery wysiwyg jwysiwyg

我的这个编辑器叫做jWYSIWYG,它基本上是一个Jquery插件。 因此,当我选择一些文本并单击H1 / H2 / p或面板中的任何内容时,我的文本将被包含在相应的标签中

(例如<h1>My text</h1>)。

我的简单问题: 如何将特定类附加到这些标记。我的意思是,每次用户点击H1标签按钮时,我都希望它能产生类似

的东西

<h1 class="someclassname">H1</h1>

我知道这一定很简单,如果有人可以提供帮助,那就太棒了。

这是我正在使用的项目的链接: https://github.com/akzhan/jwysiwyg

谢谢。

2 个答案:

答案 0 :(得分:1)

我知道这是一个老线程,但我认为我会将结果发布给其他人,因为我也在寻找与jWYSIWYG类似的调整。

您可以使用“exec”覆盖控件的默认行为。

h1: {
    exec: function () {
        var range = this.getInternalRange(),
            common = $(range.commonAncestorContainer),
            $nodeName = range.commonAncestorContainer.nodeName.toLowerCase();
        if (common.parent('h1').length) {
            common.unwrap();
        } else {
            if ($nodeName !== 'body') {
                common.wrap('<h1 class="someclassname" />');
            }
        }
    }
}

答案 1 :(得分:0)

查看文档,它应该是这样的:

$('#wysiwyg').wysiwyg({
    controls: {
        h1: { className: 'your-class-name' },
        h2: { className: 'your-other-class-name' },
    }
});