1

我有一个 contentEditable div,默认字体大小为 14px。默认字体大小可以从自定义部分(13-15px)更改。

我添加了一个按钮来更改所选文本的字体大小。

nicEditors.findEditor('myInstance1').nicCommand('fontSize', '5');

该按钮调用该函数:

nicCommand : function(cmd,args) {
  document.execCommand(cmd,false,args);
}

contentEditable div 中的结果:

<font size="5">Such a</font>

它有效,但我找不到删除<font>标签的方法。所以我尝试将 null 或 0 或 -1 或 2 或 3 放在参数中,nicCommand但结果大小与其余部分不同。

无论如何<font>要从 contentEditable div 中删除或移动标签?

在这种情况下移动:你可以让这个<font size="5">东西被猫控制。</font>. 用户选择“Something is”以从 中删除“Something is” <font size="5">。在这种情况下<font size="5">必须放在“is”之后。

4

2 回答 2

1

有一个我没见过的document.execCommand选项,它适用于 Firefox、Chrome 和 IE、 removeformat

nicEditors.findEditor('myInstance1').nicCommand('removeformat', null)

这调用了该函数:

nicCommand : function(cmd,args) {
  document.execCommand(cmd,false,args);
}

removeformat 允许删除所选文本的所有标签。这删除以及<b>as <i>as <u><font>这对我来说很好。:-)

于 2013-07-14T09:00:34.437 回答
0

如果您只想删除它,请使用

var reg = /<font\ssize="\d+">(.*?)<\/font>/g;
str = str.replace(reg, "$1");

str你的编辑器的内容在哪里

演示

于 2013-07-13T10:56:52.323 回答