2

我正在寻找创建一个所见即所得的编辑器,使用 jQuery 作为框架,我可以使用不同的方法来简化生产。

我现在确实有一个工作编辑器,它工作得很好。我使用 iFrame,并将其 designMode 设置为 on,然后从那里开始。然而,有几件事让我很烦。

以更改所选文本的字体系列为例。目前我正在使用这个:

editorDoc.execCommand('fontname', false, 'verdana');

…现在可以正常工作了:它在 iFrame 中正确显示了更改。但是,当我实际查看代码时(我将 iFrame 中的任何代码复制到隐藏的输入中,然后发布它)它会产生

<font class="Apple-style-span" face="verdana">aasdf</font>

我意识到 Apple-style-span 的第一类是 webkit 的东西,这没关系。困扰我的是整个使用<font>.

研究 execCommand 看起来它不是标准,尽管大多数浏览器都支持它。虽然它旧,所以我想知道是否有人听说过或知道产生相同效果的更好方法,希望有更语义化的代码产品。不限于 iFrame,而是能够使用 a<textarea>代替也很棒。

非常感谢,加雷斯

编辑: contentEditable 可以帮助我实现不使用 iFrame 的目标吗?

4

1 回答 1

1

您可以使用常用的 DOM 方法对 iframe 的 DOM 进行任何您想要的操作。如果您需要一些见解,请查看 TinyMCE 的来源。

于 2010-09-10T17:42:00.320 回答